我在开发时使用 Grunt、PhantomJS 和“watch”插件来运行我的 QUnit 测试(独立于 CI)。我希望能够专注于特定的 QUnit 模块,同时我正在处理该模块的测试所关注的代码。在浏览器中运行 QUnit 时,我可以指定要运行的模块(相对于所有测试)。
所以问题是,我可以告诉 Grunt qunit 任务只运行某个模块吗?我正在考虑一个命令行参数,这样我就不必更改我的 Gruntfile,例如:
~$ grunt qunit --module="test this stuff, test that stuff"
更新
需要明确的是,我要运行的是使用 QUnit 的module()
方法在测试套件中创建的模块:
module( "group a" );
test( "a basic test example", function() {
ok( true, "this test is fine" );
});
test( "a basic test example 2", function() {
ok( true, "this test is fine" );
});
module( "group b" );
test( "a basic test example 3", function() {
ok( true, "this test is fine" );
});
test( "a basic test example 4", function() {
ok( true, "this test is fine" );
});
在上面的示例中,此代码都在一个测试套件中,但在生成的 html 测试文件中,我得到一个下拉菜单来运行模块“组 a”或模块“组 b”(通过 QUnit 的 UI)。我想要的是能够以编程方式指定我想通过grunt qunit
任务运行特定模块。