1
私は、Chaiライブラリを使って、正しくテストする方法を完全に理解できていないようです。あるいは、プログラミングのファンダメンタルズから何かを逃してしまうかもしれません。ちょっと混乱します。Chai test failed with arguments
it("should check parameter type", function(){
expect(testFunction(1)).to.throw(TypeError);
expect(testFunction("test string")).to.throw(TypeError);
});
そして、これは私がテストだ関数である:私は合格するテストのために期待していたが、私はちょうどにそのスローエラーを見ている
function testFunction(arg) {
if (typeof arg === "number" || typeof arg === "string")
throw new TypeError;
}
テストを考えると
コンソール:
TypeError: Test
at Object.testFunction (index.js:10:19)
at Context.<anonymous> (test\index.spec.js:31:28)
誰かが私にこれを説明できますか?
ありがとうございました。この種の型チェックでTypeErrorを投げるのは普通ですか?私はprod env(node.jsに基づいて)にその種のロジックを使用すると、アプリケーション全体が終了する原因になるのでしょうか? –
予期しない引数を受け取った場合に型エラーをスローすることが適切です。これはNodeの['path'](https://nodejs.org/api/path.html)APIが実行するものです。エラーが処理されていない場合は、プロセスは終了します。 – cartant