我正在使用伊斯坦布尔Mocha和Chai断言库在节点上执行单元测试和代码覆盖率测试。js项目。我正在一台Linux服务器上运行,我有一个帐户。
我能够使用Mocha在测试驱动开发(TDD)和行为驱动开发(BDD)两种风格中成功地运行以下单元测试,使用以下两个命令:
./node_modules/.bin/_mocha -u tdd -R spec qa/tdd_Person.js
./node_modules/.bin/_mocha -u bdd -R spec qa/bdd_Person.js
我还能够使用以下代码在BDD测试中运行伊斯坦布尔:
./node_modules/.bin/istanbul cover --reporter=text ./node_modules/.bin/_mocha -u bdd -R spec qa/bdd_Person.js
但是,当我尝试使用TDD测试运行伊斯坦布尔时,我在测试JavaScript代码中的套件的第一个实例上得到了一个“引用错误:套件未定义”:
./node_modules/.bin/istanbul cover --reporter=text ./node_modules/.bin/_mocha -u tdd -R spec qa/tdd_Person.js
我的节点项目中也安装了NYC,可以使用以下命令完美地运行TDD和BDD测试:
./node_modules/.bin/nyc --reporter=text ./node_modules/.bin/_mocha -u tdd -R spec qa/tdd_Person.js
./node_modules/.bin/nyc --reporter=text ./node_modules/.bin/_mocha -u bdd -R spec qa/bdd_Person.js
那么,为什么我的TDD测试在伊斯坦布尔失败了,但在所有其他情况下都有效,而我的BDD测试总是有效的呢。伊斯坦布尔有什么我遗漏的吗?