我用Mocha来测试我的JavaScript东西。我的测试文件包含5个测试。是否可以运行一个特定的测试(或一组测试),而不是文件中的所有测试?


当前回答

你可以试试"it.only"

it.only('Test one ', () => {
            
    expect(x).to.equal(y);
});

it('Test two ', () => {
            
    expect(x).to.equal(y);
});

在这种情况下,只执行第一个

其他回答

如果你使用npm测试(使用包。Json脚本)使用一个额外的——通过mocha传递参数

例如NPM test -- --grep“my second test”

编辑:看起来——grep可能有点麻烦(可能取决于其他参数)。您可以:

修改package.json:

"test:mocha": "mocha --grep \"<DealsList />\" .",

或者使用保释金,这似乎不那么麻烦

npm test -- --bail

只在“describe”,“it”或“context”之前使用。我使用“$npm run test:unit”运行,它只执行带有.only的单元。

describe.only('get success', function() {
 // ...
});

it.only('should return 1', function() {
  // ...
});

不知道为什么grep方法在使用npm测试时不适合我。不过这是可行的。出于某种原因,我还需要指定测试文件夹。

npm test -- test/sometest.js

根据您的使用模式,您可能只喜欢使用。我们使用TDD风格;它是这样的:

test.only('Date part of valid Partition Key', function (done) {
    //...
}

只有这个测试将从所有文件/套件中运行。

你可以试试"it.only"

it.only('Test one ', () => {
            
    expect(x).to.equal(y);
});

it('Test two ', () => {
            
    expect(x).to.equal(y);
});

在这种情况下,只执行第一个