2

我想对测试进行分类以针对不同目的运行它们。就我而言,我无法选择进行tag一些测试并按需运行测试。我还查看了 Chaijs 是否具有这样的功能,但无法找到解决方案。

我想要做的是添加一些标签,如下所示:

@health_check
pm.test("Status code is 200", function () {
    pm.response.to.have.status(200);
});

@smoke
pm.test("Product should be correct", function () {
    var jsonData = pm.response.json();
    var product = pm.variables.get("PRODUCT");

    pm.expect(jsonData.meta.appId).to.eql(product);
});

并按如下方式运行它或无论如何实现此目的

$ newman run mycollection.json -tag smoke
4

1 回答 1

3

tag类型选项在应用程序或 Newman 中是不可用的。

您可以使用--folderCLI 上的选项并组织您的集合以将请求包含在那些涵盖这些场景的特定文件夹中。

例如:

$ newman run mycollection.json --folder healthCheck --folder smoke

或者,如果运行特定测试/测试组,您可以使用全局变量作为控件中的开关。

将测试包装在if这样的语句中:

if(pm.globals.get('smoke_check') === "runCheck") {
    pm.test("Status code is 200", () => pm.response.to.have.status(200));
}

--global-var然后使用标志 在 cli 中传入一个全局变量。

$ newman run mycollection.json --global-var "smoke_check=runCheck"

于 2020-01-10T07:47:27.243 回答