使用mocha.js测试CLI应用程序

时间:2014-09-01 04:56:31

标签: javascript node.js unit-testing mocha

我想测试一个CLI应用程序,并希望在测试运行时接收用户输入,因为mocha.js有200ms限制测试失败。所以我想知道如何在脚本获取输入后暂停测试,并在获取后恢复。

3 个答案:

答案 0 :(得分:0)

您可以像这样增加测试超时;

describe('increased timeout', function(){
  it('should not timeout', function(done){
    this.timeout(2000);
    setTimout(done, 1500);
  });
});

但我不建议你这样做。您可以使用nexpectstream-expect来模拟用户输入。这样你就可以编写很多自动化测试。

stream-expect

的使用示例

答案 1 :(得分:0)

您的测试运行器可以添加超时参数,类似于此。

mocha -r ts-node/register test/index.ts **--timeout 15000** --reporter mochawesome

答案 2 :(得分:-2)

你应该让你的测试异步。添加done参数并在完成后调用它。 http://visionmedia.github.io/mocha/ - 检查异步代码部分是否有样本。

http://jsfiddle.net/iskomorokh/3jnoyovb/9/