Httprunner_遇到的问题及其解决方法

2019-12-16  本文已影响0人  猪儿打滚

问题1:解决测试报告中,请求体中中文乱码问题

原本使用httprunner发送的post请求中,如果body中有中文,在测试报告中会乱码显示:


image.png
解决方法

问题2:在case1中output一个变量值,然后在case2中,使用这个变量值作为请求参数和预期结果,预期结果中值显示是:LazyString($变量key)

解决方法

问题3:在问题2的基础上,发现测试报告的expect value是LazyString($变量key)

解决方法

问题4:发送https请求

解决方法
request:
    # 关闭SSL验证
    verify: False

问题5:上传图片

解决方法
variables:
    # 上传文件,内置的函数
    - file_path: "files/p2.gif"
    - m_encoder: ${multipart_encoder(file = $file_path)}

request:
    headers:
        # 上传文件
        Content-Type: ${multipart_content_type($m_encoder)}
        Accept: application/json
    method: POST
    url: xx
    verify: False
    # 上传文件
    data: $m_encoder

问题6:api、case的变量共享

# 响应结果提取为变量
extract:
    activityId_1: content.data
# 设置变量,当前case下的step都可使用
    variables: 
        activityName_1: activityName${random_int()}
        activityId_1: activityId_1

问题7:int类型使用contains进行判断会类型不匹配

解决方法
def int_contains(ac_value, ex_value):
    """
    用于ex_value类型为int等类型的包含
    :param ac_value:
    :param ex_value:
    :return:
    """
    assert str(ex_value) in str(ac_value)

问题7:一些需要等待一段时间数据才进行的接口,比如说es插入数据需要时间

解决方法
setup_hooks:
    - ${sleep(1)}
上一篇 下一篇

猜你喜欢

热点阅读