如何 运行 守夜人中的单个测试
How to run a single test in nightwatch
如何从以下测试中 运行 仅 Test 3
?
module.exports = {
'Test 1':function(){},
'Test 2':function(){}
'Test 3':function(){}
}
--testcase 标志可以从 0.6 版开始用于 运行 来自命令行的单个测试,例如
nightwatch.js --test tests\demo.js --testcase "Test 1"
这可以使用 test groups or test tags 来完成。您还可以使用 --test
标志执行单个测试,例如
nightwatch.js --test tests\demo.js
你必须在函数前使用特定的标签并且将所有函数在tests目录下的不同文件中分开,然后用[=调用命令30=]--tag 参数。请参阅 wiki nightwatch tags page 并观看此示例:
// --- file1.js ---
module.exports = {
tags: ['login'],
'Test 1':function(){
//TODO test 1
}
};
// --- file2.js ---
module.exports = {
tags: ['special', 'createUser'],
'Test 2':function(){
//TODO test 2
},
};
// --- file3.js ---
module.exports = {
tags: ['logoff', 'special'],
'Test 3':function(){
//TODO test 3
},
}
如果你运行:
nightwatch.js --tag login
仅 运行s 测试 1,但是如果您 运行:
nightwatch.js --tag special
测试 2 和 测试 3 将被执行。
您可以指定多个标签
nightwatch.js --tag tag1 --tag tag2
必须将每个测试函数分开,因为 Nightwatch 使用 filematcher 处理每个文件。 See Github code.
PD: 如果文件有语法错误,可能是测试没有运行或者没有找到测试
新参数 --testcase 已添加到 运行 指定的测试用例。
nightwatch.js --test tests\demo.js --testcase "Test 1"
这是自 v0.6.0 以来的新功能
https://github.com/beatfactor/nightwatch/releases/tag/v0.6.0
你可以这样做:
node nightwatch.js -e chrome --test tests/login_test --testcase tc_001
另一种可能的方法是在每个要省略的测试用例上使用以下内容:
'@disabled': true,
如果您想测试它,可以将其简单地设置为 false 或将其删除。
对我来说,它只适用于:
npm run test -- tests/01_login.js --testcase "Should login into Dashboard"
npm run <script> -- <test suite path> --testcase "<test case>"
我在 package.json 中的脚本:
"test": "env-cmd -f ./.env nightwatch --retries 2 --env selenium.chrome",
在守夜人版本 1.3.4
您还可以使用标签:
npm run <script> -- <enviroment> <tag>
npm run test -- --env chrome --tag login
只需将其添加到您的测试用例中即可:
module.exports = {
'@tags': ['login', 'sanity', 'zero1'],
...
}
如何从以下测试中 运行 仅 Test 3
?
module.exports = {
'Test 1':function(){},
'Test 2':function(){}
'Test 3':function(){}
}
--testcase 标志可以从 0.6 版开始用于 运行 来自命令行的单个测试,例如
nightwatch.js --test tests\demo.js --testcase "Test 1"
这可以使用 test groups or test tags 来完成。您还可以使用 --test
标志执行单个测试,例如
nightwatch.js --test tests\demo.js
你必须在函数前使用特定的标签并且将所有函数在tests目录下的不同文件中分开,然后用[=调用命令30=]--tag 参数。请参阅 wiki nightwatch tags page 并观看此示例:
// --- file1.js ---
module.exports = {
tags: ['login'],
'Test 1':function(){
//TODO test 1
}
};
// --- file2.js ---
module.exports = {
tags: ['special', 'createUser'],
'Test 2':function(){
//TODO test 2
},
};
// --- file3.js ---
module.exports = {
tags: ['logoff', 'special'],
'Test 3':function(){
//TODO test 3
},
}
如果你运行:
nightwatch.js --tag login
仅 运行s 测试 1,但是如果您 运行:
nightwatch.js --tag special
测试 2 和 测试 3 将被执行。
您可以指定多个标签
nightwatch.js --tag tag1 --tag tag2
必须将每个测试函数分开,因为 Nightwatch 使用 filematcher 处理每个文件。 See Github code.
PD: 如果文件有语法错误,可能是测试没有运行或者没有找到测试
新参数 --testcase 已添加到 运行 指定的测试用例。
nightwatch.js --test tests\demo.js --testcase "Test 1"
这是自 v0.6.0 以来的新功能
https://github.com/beatfactor/nightwatch/releases/tag/v0.6.0
你可以这样做:
node nightwatch.js -e chrome --test tests/login_test --testcase tc_001
另一种可能的方法是在每个要省略的测试用例上使用以下内容:
'@disabled': true,
如果您想测试它,可以将其简单地设置为 false 或将其删除。
对我来说,它只适用于:
npm run test -- tests/01_login.js --testcase "Should login into Dashboard"
npm run <script> -- <test suite path> --testcase "<test case>"
我在 package.json 中的脚本:
"test": "env-cmd -f ./.env nightwatch --retries 2 --env selenium.chrome",
在守夜人版本 1.3.4
您还可以使用标签:
npm run <script> -- <enviroment> <tag>
npm run test -- --env chrome --tag login
只需将其添加到您的测试用例中即可:
module.exports = {
'@tags': ['login', 'sanity', 'zero1'],
...
}