Вам обязательно нужно изучить grunt-contrib-qunit и grunt-contrib-connect (https://github.com/gruntjs/grunt-contrib-qunit и https://github.com/gruntjs/grunt-contrib-connect), поскольку тандем предоставит вам безгласный фантом и локальный веб-сервер.
UPDATE - а для запуска только один конкретный тест, вы могли бы написать что-то вроде этого, перечисляя свои тесты как отдельные цели для вашей QUnit задачи:
grunt.initConfig({
qunit: {
justSomething: ['test/justsomething.html'],
justSomethingElse: ['test/justsomethingelse.html'],
all: ['test/*.html']
}
});
Тогда вы можете позвонить grunt qunit:justSomething
или grunt qunit:all
- это не относящиеся к QUnit, хотя - см http://gruntjs.com/configuring-tasks
Теперь, если вы действительно хотели бы использовать цель указать имя теста, вы бы что-то вроде:
module.exports = function(grunt) {
grunt.loadNpmTasks('grunt-contrib-qunit');
grunt.initConfig({
qunit: {
all: ['test/**/*.html']
}
});
grunt.task.registerTask('foo', 'A sample task that run one test.', function(testname) {
if(!!testname)
grunt.config('qunit.all', ['test/' + testname + '.html']);
grunt.task.run('qunit:all');
});
}
Затем позвоните по телефону grunt foo:testname
.
И все же это не относится к qunit - но, скорее, рукоплескание задания.
Надеюсь, что (наконец) поможет.
отредактированный вопрос для уточнения - grunt/qunit уже настроен, вопрос в том, как я запускаю один тест вместо всех из них. – wrschneider
Ну, это все еще запутанно :-) - У вас есть grunt-contrib-connect, обслуживающий ваши файлы? В чем проблема с конфигурацией qunit "urls", которая предотвращает запуск одного теста? –
, надеюсь, снова прояснилось. – wrschneider