の下で失敗:モカウォッチングは、私は非常に単純な興亜アプリケーションを持っているNPM
私はこのようなモカとsupertestでテストvar app = module.exports = require("koa")();
app.use(function *(){
this.body = "Koa says Hi!";
});
var port = process.env.PORT || (process.argv[2] || 3000);
port = (typeof port === "number") ? port : 3000;
app.listen(port);
console.log("Application started. Listening on port:" + port);
。
var app = require("../");
var request = require("supertest").agent(app.listen());
describe("Our amazing site", function() {
it("has a nice welcoming message", function (done) {
request
.get("/")
.expect("Koa says Hi!")
.end(done);
});
});
私は、変更のための私のファイルを見て、正常に動作します。この
mocha -u bdd -R min -w
よう-w
フラグを使用します。私はファイルを変更し、テストは再実行され、すべて正常です。非常に不思議な
しかし、私はこのようなスクリプトとしての私のpackage.json
ファイルの中にそのコマンドを移動した場合:
"scripts": {
"watch:test": "mocha -u bdd -R min -w"
},
私が選んさ変更を行う、私はそれが動作コマンドを最初に実行したときに、まで今テストが失敗すると:私はmocha
を停止して再起動するまで、エラーがなくならない
1) Uncaught error outside test suite:
Uncaught Error: listen EADDRINUSE :::3000
at Object.exports._errnoException (util.js:837:11)
at exports._exceptionWithHostPort (util.js:860:20)
at Server._listen2 (net.js:1231:14)
at listen (net.js:1267:10)
at Server.listen (net.js:1363:5)
at Application.app.listen (node_modules/koa/lib/application.js:70:24)
at Object.<anonymous> (index.js:10:5)
at Object.<anonymous> (test/site.spec.js:1:73)
at Array.forEach (native)
at StatWatcher._handle.onchange (fs.js:1285:10)
。
npm
で実行すると、動作が異なるのはなぜですか? これを解決するにはどうすればよいですか?