Functional testing 如何在nightwatch中运行单个测试

Functional testing 如何在nightwatch中运行单个测试,functional-testing,nightwatch.js,Functional Testing,Nightwatch.js,如何仅从以下测试运行测试3 module.exports = { 'Test 1':function(){}, 'Test 2':function(){} 'Test 3':function(){} } 自版本0.6以来,--testcase标志可用于从命令行运行单个测试,例如: nightwatch.js --test tests\demo.js --testcase "Test 1" 这可以使用或来完成。您还可以使用--test标志执行单个测试,例如: nightwatch.

如何仅从以下测试运行
测试3

module.exports = {
  'Test 1':function(){},
  'Test 2':function(){}
  'Test 3':function(){}
}
自版本0.6以来,--testcase标志可用于从命令行运行单个测试,例如:

nightwatch.js --test tests\demo.js --testcase "Test 1"
这可以使用或来完成。您还可以使用
--test
标志执行单个测试,例如:

nightwatch.js --test tests\demo.js

必须在函数之前使用特定标记,并在tests目录下的不同文件中分隔所有函数,然后使用--tag参数调用命令。请参见并观看此示例:

// --- 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
nightwatch.js --tag special
仅运行测试1,但如果运行:

nightwatch.js --tag login
nightwatch.js --tag special
将执行测试2测试3

可以指定多个标记

nightwatch.js --tag tag1 --tag tag2
必须分离每个测试函数,因为Nightwatch使用filematcher处理每个文件

PD:如果文件有语法错误,则可能是测试未运行或未找到测试

添加了一个新参数--testcase
,以运行指定的测试用例

nightwatch.js --test tests\demo.js --testcase "Test 1"
这是自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>"
在nightwatch版本1.3.4中

您还可以使用标记:

npm run <script> -- <enviroment> <tag>
npm run test -- --env chrome --tag login

这真是太棒了——我认为如果它像摩卡咖啡和格雷平咖啡一样工作,那将是最好的选择。这就是我所希望的!是的,但这样不行。如果您愿意,请查看github夜视repo@albertoiNET您能否提供一个以编程方式使用nightwatch的解决方案?也就是说,运行一个调用
nightwatch.runner
Woot!谢谢@NicoPennec