邮递员测试以检查小数位数

时间:2020-06-19 19:17:24

标签: javascript postman postman-testcase

我想测试响应中的字段返回的小数位数等于5。不确定使用regex是否是最佳解决方案,但是到目前为止,这是我似乎无法使用的:

pm.test("Check number of decimal place of my_variable field"), () => {
    _.each(jsonData, (results) => {
        if results.my_variable !== null){
            pm.expect(results.my_variable).to.match(/\d{1}.\d{5}/);
        }
    })
}

以下是示例响应。请注意,即使测试与正则表达式不匹配,测试仍会通过

 {
     "my_variable": "0.0198970000000000",

 }

谢谢!

1 个答案:

答案 0 :(得分:0)

关于您的正则表达式的两件事:

您需要使用.\进行转义,否则.将被解释为“任何单个字符”。

\d{5}可以匹配5位数字,但不在乎后面是否有更多数字,因此您需要添加$来检查是否到达行尾,如果没有其他内容跟在5位数字之后。

此正则表达式正在运行:\d{1}\.\d{5}$