1

我第一次尝试在命令行上使用 Dojo 1.8.3 运行测试 node被以下错误消息阻止:

../dojo/dojo.js:15
ode:function(){return _25;},guardCheckComplete:_37};};if(1){var _38=location.p
                                                                    ^
ReferenceError: location is not defined

解决方法是使用未压缩的源代码而不是发布版本,因为优化后的版本似乎只能在浏览器中运行。接下来我尝试了一个配置脚本

// bootstrap.js
dojoConfig = {
    baseUrl: ".",
    packages:[{name: 'dojo', location: '../dojo_src'}],
    deps: ['./ui_test.js']
};
require('../dojo_src/dojo.js');

和一个简单的测试

// ui_test.js
dojo.require("doh.runner");
doh.register("test_1", [
    function four_eq_4() {
        var x = 4;
        doh.is(x.toString(), "4");
    }
]);
doh.run();
console.log("done.");

当我运行测试时doh.run()似乎没有效果

$ node bootstrap.js
done.

我的目录结构:

/app
    bootstrap.js
    ui_test.js
/util/doh
/dojo_src

在命令行上使用 DOH 的正确方法是什么?

4

1 回答 1

0

答案很简单,但并不明显。运行load=doh以调用测试运行器。

$ node bootstrap.js load=odh
于 2013-04-06T05:46:57.373 回答