如何通过testcaferc.json使用元值数组过滤测试



我有不同元数据值的测试。

样本代码

import { t, Selector } from "testcafe";
fixture("Filtering test cases example  2");
test("test case 1", async (t) => {
console.log("Test case 1");
}).meta( {"type" : "smoke", "environment" : "qa" , "severity" : "high" });
test("test case 2", async (t) => {
console.log("Test case 2");
}).meta( {"type" : "smoke", "environment" : "qa" , "severity" : "low" });
test("test case 3", async (t) => {
console.log("Test case 3");
}).meta( {"type" : "regression", "environment" : "production" , "severity" : "high" });
test("test case 4", async (t) => {
console.log("Test case 4");
}).meta( {"type" : "regression", "environment" : "qa" , "severity" : "low" });

如何将.testcaferc.json文件配置为以低严重性和高严重性运行。

我在寻找类似下面的东西来过滤测试用例。

{
"browsers": "chrome",
"filter": {
"testMeta": {
"severity" : ["high", "low"]
}
}
}

这是一个复杂的使用场景,我建议您使用.testcaferc.js配置文件而不是.testcaferc.json。请看下面的例子:

module.exports = {
filter: function (testName, fixtureName, fixturePath, testMeta, fixtureMeta) {
return testMeta.severity === 'high' ||
testMeta.severity === 'low' ||
testMeta.severity === 'medium';
}
}

您可以在本主题中找到有关filter方法用法的更多信息:https://testcafe.io/documentation/402657/reference/testcafe-api/runner/filter#header

最新更新