2016-04-27 15 views
3

私はPostmanを使ってAPIをテストしようとしています。私はExpressでビルドしています。私は一連のテストを構築しています。ここでは簡単な例です:テストが失敗した理由を解決する

tests["Status code is 200"] = responseCode.code === 200; 

// Check that we got the expected board 
var expected = { _id: 11, name: "board A" }; 
tests["Board retrieved"] = JSON.stringify(expected) === responseBody; 

私は私のテストが失敗する可能性がある場合ということが発見よ、彼らは私に有益な何かを教えていない:

enter image description here

を検証するための別の方法があります結果、それは誰にも知られている伝統的なテストランナーのような期待値/実際の値を教えてくれるだろうか?私がこれまで考えることのできる唯一のことは、情報をテスト名に埋め込むことです。テストの名前にはちょっとした悩みが感じられます。

答えて

2

可能回避策は、より多くの機能を追加する逢引をラップすることができます

/** This function adds information in the label only if the validations returns false */ 
tests.assertEquals= function (expected, actual, label) { 
    if (expected!==actual) { 
    this[label + ': Expected "' +expected + '" but got "'+ actual +'"']=false; 

    } else { 
    this[label]=true; 
    } 
} 

tests.assertEquals(JSON.stringify(expected), responseBody,"Board retrieved"); 

あなたが言ったように、それはcludgeかもしれないが、あなただけそれが必要だ場合は、この情報を持っている方法に使用しましたそれを「隠して」おくと、よりきれいになり、読みやすくなります。別のオプションは、ラベルに追加するのではなく余分な情報を表示するためにconsole.logを使用することですが、味の問題になります。

+0

ありがとうパブロ - これまで私が最も近づいてきたのはこれだけです。残念ながら、コンソール出力は私が見る限りどこにも表示されません。 – Ian

関連する問題