json 如何检查响应是否包含指定值,如果包含,则在Postman中结束测试

oyxsuwqo  于 2023-01-10  发布在  Postman
关注(0)|答案(1)|浏览(146)

我正在学习 Postman 测试脚本,我坚持一个练习。我需要检查响应是否包括指定的值(从数组中的一个行星被称为塔图因)。身体响应:

"results": [
        {
            "name": "Tatooine",
            "rotation_period": "23",
            "orbital_period": "304",
            "diameter": "10465",
        {
            "name": "Alderaan",
            "rotation_period": "24",
            "orbital_period": "364",
            "diameter": "12500",
        },

我创建了这个脚本:

const jsonData = pm.response.json();

pm.test("Your test name", function () {
    for (let i = 0; i <= jsonData.results.length; i++) {
        pm.expect(jsonData.results[i].name).to.include("Tatooine")};

});

但我不知道如何跳出循环,并在找到搜索值后将测试标记为“通过”。

62lalag4

62lalag41#

我假设您希望验证至少存在一个名称Tatooine
步骤1:获取所有名称

const jsonData = pm.response.json();
let names = _.map(jsonData.results, "name");

步骤2:验证阵列names是否包含Tatooine

pm.test("Your test name", function () { 
  pm.expect(names).to.include("Tatooine")
});

相关问题