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

时间:2013-08-10 14:32:52

标签: 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

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

$ 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

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

$ jasmine-node no.spec.js
File: /tmp/no.spec.js is missing.

4 个答案:

答案 0 :(得分:34)

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

  

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

     

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

答案 1 :(得分:1)

您应upgrade to the latest version of nodejs(目前为0.10.15)

答案 2 :(得分:1)

此问题在filename.In jasmine-node中,文件名应以'spec'结尾 * spec.js 例如:helloWorldspec.js或abcspec.js 引用文档:

  

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

请阅读更多here

答案 3 :(得分:0)

你不想错过describe吗?

describe("A suite", function() {
  it("contains spec with an expectation", function() {
    expect(true).toBe(true);
  });
});

运行:

c:\Temp>jasmine-node --verbose my.Spec.js

A suite
    contains spec with an expectation

Finished in 0.007 seconds
1 test, 1 assertion, 0 failures, 0 skipped

一切正常。