True / false 写在控制台上,试图在邮递员中编写测试。如果为假,则测试失败

True / false written on console , trying to write tests in postman. If false, fail the test

我包含在控制台中打印为 true/false 的函数,我需要在 postman 中编写测试,以便如果发现 false,则测试失败并可以显示在测试选项卡上。在下面的 const testfalse= 在控制台中给出值 true 或 false。但如果发现错误,我需要进行测试,如果资金错误,我会失败。我试过 if 条件,它没有记录任何东西

    // Getting the category name and name key
var categname= pm.environment.get("categoryName");
console.log(categname)
var categnamekey= pm.environment.get("categorynameKey")
console.log(categnamekey)

var arr=JSON.parse(responseBody); 
function contains(arr, key, val) {
    for (var i = 0; i < arr.length; i++) {
        if(arr[i][key] === val) 
        return true;
    }
    return false;
}

// To verify if value present or not which prints true or false

const testfalse=console.log(contains(arr, "name", categname)); 
console.log(contains(arr,"nameKey",categnamekey));

if(testfalse=='false'){
    tests["fail"]
}else {
    tests["success"]
}

您可以使用pm.expect(someValue).to.equal(expectedValue) 方法来比较该值是否符合您的预期。如果不相同,失败的测试将显示在结果中。

还有你的testFalse应该只是check,你可以随时console.log,不会影响测试...只是给你一个log,当测试运行。

const testfalse = contains(arr, "name", categname);
console.log('Category found: ' + testfalse); 

 //rest of code here

//Test will either pass or fail after this line and reflect on test tab
pm.expect(testfalse).to.equal(true); //maybe rename testPass

https://learning.postman.com/docs/postman/scripts/test-scripts/