我在 YML 编写的测试用例中调用 debugtalk.py 里自定义的函数, 函数的返回值是一个数字, 当数字比较大的时候, YML 中获得的值是以科学计数法表示的, 这个不利于后面的操作. 有没有配置项什么的可以更改这个设置呢? 应该不是函数的问题, 我在 ipython 里打了一遍那个函数, 返回是正常的, 不会返回科学计数法表示的数字.
@debugtalk 看看?
你可以提供下版本号和具体示例么?我们定位看下
你好,我用的hrp version v4.0.0版本。
hrp version v4.0.0
我们有一个接口,参数是用户的 uid,psw,还有一个随机数,我用${get_random()}调用 debugtalk.py 里写的方法。具体的测试用例如下:
${get_random()}
- name: ****** request: method: GET url: ****** params: dispatcher: $dispatcher password: $password rand: ${get_random()} validate: - eq: ["status_code", 200] - eq: ["body.error", 0] extract: totle_user_info: "body.msg"
get_random 方法如下:
get_random
def get_random(f=10000000, t=99999999) -> int: return int(randint(f, t))
这是 hrp 运行之后测试报告日志里的截图:
感谢反馈,这的确是个 bug,我先登记了,在下个版本中进行修复。 https://github.com/httprunner/httprunner/issues/1352
好的,辛苦辣! 其实 get 请求还好,我在 python 函数里把数字转成字符串就能用了。但是 post 这种带数据类型的请求就不行。