Javascript 如果JSTD TestCase方法由RequireJS包装,如何从命令行运行JSTestDriver?
我最近将RequireJS添加到我的项目中,现在已经重写了我的JSTestDriver测试用例,以使它们由RequireJS包装:Javascript 如果JSTD TestCase方法由RequireJS包装,如何从命令行运行JSTestDriver?,javascript,unit-testing,requirejs,webstorm,js-test-driver,Javascript,Unit Testing,Requirejs,Webstorm,Js Test Driver,我最近将RequireJS添加到我的项目中,现在已经重写了我的JSTestDriver测试用例,以使它们由RequireJS包装: //this does run when running from within WebStorm require(['backbone', 'models/ParametersModel'],function (backbone, params) { TestCase("test aTestCaseInside", { setUp: fun
//this does run when running from within WebStorm
require(['backbone', 'models/ParametersModel'],function (backbone, params) {
TestCase("test aTestCaseInside", {
setUp: function () {
assertNotUndefined('backbone is undefined', backbone);
assertNotUndefined('params is undefined', params);
this.p = new params();
},
//todo: without the backbone dependency everything runs as expected!
testClass: function () {
console.log("running a test INSIDE the requireJS context");
assertEquals("", this.p.getValue(), 'a value from param')
}
});
});
当我通过JetBrain的Webstorm IDE的JSTD插件运行此测试时,它运行良好
但是我也希望能够从命令行运行JSTestDriver。然而,这不起作用。如果执行此命令:
java -jar test\vendor\JsTestDriver\1.3.5\jar\JsTestDriver.jar --config jsTestDriver.jstd --browser "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --port 14999 --tests all --captureConsole --runnerMode PROFILE
我得到这个输出:
feb 13, 2014 10:56:41 AM com.google.jstestdriver.server.handlers.pages.SlavePageRequest createCaptureUrl
SEVERE: Invalid/No runner type specified: null falling back to BROWSER
Total 0 tests (Passed: 0; Fails: 0; Errors: 0) (0,00 ms)
feb 13, 2014 10:56:41 AM com.google.jstestdriver.ActionRunner runActions
INFO:
在浏览器的控制台中,我得到:
Failed to load resource http://127.0.0.1:14999/query/1392285643189
Failed to load resource http://127.0.0.1:14999/test/vendor/backbone/1.0.0/js/backbone.js
命令行上的命令是正确的,因为当我在require函数之外创建一个TestCase时,它确实显示测试已经运行并通过了
如何使用require JS配置JSTD,以便能够从命令行运行测试
谢谢。请使用RequireJS。以下是一些例子: