Javascript 如何在Postman中获取测试状态(即通过或失败或错误)?

Javascript 如何在Postman中获取测试状态(即通过或失败或错误)?,javascript,postman,testcase,postman-testcase,Javascript,Postman,Testcase,Postman Testcase,这是我在《邮递员》中的测试案例 pm.test("verify the JSON object keys for machines - ", function() { if (Object.keys(data).length === 0) { pm.expect(Object.keys(data).length).to.eq(0); } } 现在,若这个测试的状态是PASS,那个么我不想执行下一个测试用例 但若状态为FAIL,则应执行下一个测试用例 下一个测试用

这是我在《邮递员》中的测试案例

pm.test("verify the JSON object keys for machines - ", function() {
    if (Object.keys(data).length === 0) {
        pm.expect(Object.keys(data).length).to.eq(0);
    }
}
现在,若这个测试的状态是
PASS
,那个么我不想执行下一个测试用例 但若状态为
FAIL
,则应执行下一个测试用例 下一个测试用例是-

pm.test("verify the JSON object keys for machines- ", function() {
        pm.expect(data[1]).to.have.property('timeStamp');
    }
从逻辑上讲,您需要“OR”函数,但邮递员中没有这样的函数。我的建议是得到正确/错误的结果,并与邮递员核实

pm.test(“验证机器的JSON对象键-”,function(){
常数结果=
Object.keys(data).length==0 | |//如果数据对象中没有属性,则为true
数据中的“timeStamp;”//如果数据对象中有timeStamp属性,则为true
pm.expect(lengthEqualZero | | hasPropertyTimeStamp).to.be.true;

}
也许可以通过编程方式跳过测试来实现这一点

(condition ? skip : run)('name of your test', () => {

});
取一个变量,如果第一次测试的结果通过,则更新它

var skipTest = false;

pm.test("verify the JSON object keys for machines - ", function() {
    if (Object.keys(data).length === 0) {
        pm.expect(Object.keys(data).length).to.eq(0);
        skipTest = true // if the testcase is failed, this won't be updated
    }
}

(skipTest ? pm.test.skip : pm.test)("verify timeStamp keys for machines-", () => {
     pm.expect(data[1]).to.have.property('timeStamp');
});
结果跳过

无跳过的结果


感谢您的反馈,使用
if..else
可以很简单地完成。我也知道您的演示方式。但让我想到这个问题的是,当我们执行测试用例时,结果会显示在postman的“测试结果”选项卡中,它还会在选项卡名称i旁边显示通过和失败的测试用例总数如果他们能提供这一点,那么一定有办法。在robot框架中,testng有可能获得测试用例的状态,因此我希望Postanthanks中的这一功能能够建议另一种方法,它似乎更接近我所寻找的方法,但它对我来说仍然不是最简单的,我每次都需要实现它当我需要实现它的时候,我正在寻找邮递员已经简化了大部分事情的方式。我仍然会等待别人的回答,如果没有得到任何答案,我会接受你的回答