邮递员测试中的if陈述

时间:2018-08-08 10:03:34

标签: javascript html json postman qa

我在邮递员工作,我想要构建这样的测试结构:

var login_status = pm.environment.get("LOGIN_STATUS");
var jsonData = pm.response.json();
pm.test("TESTS", function () {
    if (login_status === 1) {
        pm.expect...(test 1);
    }else if (login_status === 2) {
                pm.expect...(test 2);
    }else if (login_status === 3) {
                pm.expect...(test 3);

但是它对我不起作用。

按照我的逻辑,邮递员应检查登录状态,并仅使用一个pm.expect ...来对应login_status值。

如何在Postman中使用if语句? 谢谢!

1 个答案:

答案 0 :(得分:2)

您正在使用的比较运算符将返回false,因为它正在检查相同的type,请尝试使用==而不是===

在Postman环境文件中存储的值是string,在测试中,您要对number进行严格等于。

您还可以尝试将number的值更改为string的{​​{1}}值,或使用严格的不等式,这样您使用的类型就无关紧要,例如{{1} }。

从文件中获取值时,甚至可以只使用login_status === "1"函数。

login_status !== 2

这完全取决于您以及您构造支票的方式。

可以在这里找到有关比较运算符的更多信息: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Comparison_Operators#Identity