私は誰かが小さな問題で私を助けることができると思っています。私は簡単なテストケースでこれをしようとしています、関数の中に住ん未定義のプロパティをスタブアウトし、既知の値を返すようにしようとしています:Sinon JSスタッフィング/定義されていないプロパティを嘲笑
var self = this;
self.test = function() {
return person.myId();
};
if (typeof module !== "undefined" && module.hasOwnProperty("exports")) {
module.exports = self;
}
return self;
私は何をしようとしたことは次のとおりです。
it('Basic stub test', function() {
sinon.stub(code, 'person.myId').return("1234");
assert(code.test(), "1234");
});
私はperson.myId()への呼び出しをスタブすることを望んでいましたが、何もエラーが出ません:存在しないプロパティperson.myIdをスタブできません。
私たちは依存関係注入を処理するソフトウェアを使用しています(たとえば、ソフトウェア担当者の実行時に利用可能になっています)が、ソフトウェアの外に単体テストテストを書くことを試みているため、欠落している依存関係を取り除く必要があります。
誰もこの種のことを以前に試みたことがありますか?私はできないことをしようとしていますか?
ご協力いただきありがとうございます。
サム
人がコードで定義されていますか? –
personは、カスタムソフトウェアを使用して実行時に挿入され、スクリプトで使用できるオブジェクトです。 –
上記のコードに追加することは可能ですか? –