当*是*测试时,jasmine-node表示"0测试"

Hen*_*k N 14 javascript node.js jasmine jasmine-node

我希望这会说"1次测试",但它会说"0次测试".知道为什么吗?这是在OS X上.

$ jasmine-node --verbose my.spec.js
undefined

Finished in 0.001 seconds
0 tests, 0 assertions, 0 failures, 0 skipped

$ cat my.spec.js
describe("bar", function() {
  it("works", function() {
    expect("foo").toEqual("foo");
  });
});

$ jasmine-node --version
1.11.0  
$ npm --version
1.3.5  
$ node -v
v0.4.12
Run Code Online (Sandbox Code Playgroud)

即使我尝试创建语法错误,我得到相同的输出:

$ cat my.spec.js
it(
$ jasmine-node --verbose --captureExceptions my.spec.js
undefined

Finished in 0.001 seconds
0 tests, 0 assertions, 0 failures, 0 skipped
Run Code Online (Sandbox Code Playgroud)

但是,如果我尝试指定一个不存在的文件,它会抱怨:

$ jasmine-node no.spec.js
File: /tmp/no.spec.js is missing.
Run Code Online (Sandbox Code Playgroud)

edi*_*999 34

我也有这个问题,就是我没有正确命名文件:

您的规范文件必须命名为spec.js,spec.coffeespec.litcoffee,它们与正则表达式/spec.(js|coffee|litcoffee)$/i匹配; 否则jasmine-node将找不到它们!例如,sampleSpecs.js是错误的,sampleSpec.js是对的.

资料来源:https://github.com/mhevery/jasmine-node


She*_*tJS 1

您应该升级到最新版本的nodejs(当前为0.10.15)

  • @Nenad 如果您没有正确命名文件,则需要 --matchall 。例如,如果您的测试文件是“test.js”,那么 jasmine 会感到困惑 (6认同)