すべてのテストの前に何かをしたいのですが、その後ですか? コードを整理する最良の方法は何ですか? 例: いくつかの変数をバックアップする -> それらをクリアする -> 何かをテストする -> バックアップを復元する。「beforeEach」と「afterEach」は高すぎます。ありがとう!
6003 次
4 に答える
9
非常に簡単な解決策:
describe("all o' my tests", function() {
it("setup for all tests", function() {
setItUp();
});
describe("actual test suite", function() {
});
it("tear down for all tests", function() {
cleanItUp();
});
});
これには、セットアップ/ティアダウンをどこにでも配置できるという利点があります (たとえば、ネストされたスイートの最初/最後)。
于 2014-06-23T15:03:55.133 に答える
0
Jasmine には、独自のレポーターを作成して添付するオプションがあります。レポーターを実装するには、 、 、 などの基本的なコールバックがinitialize
ありjasmineStarted
ますjasmineDone
。これにより、要件を達成できます。たとえば、Jasmine 2.0 では、jasmine-html.js
ファイルを参照して基本的な理解を深めてください。
于 2014-02-12T15:29:44.867 に答える
0
すべてのテストが開始される前に関数を呼び出すのは簡単です。ただし、Jasmine (少なくとも 1.3.1) では、レポーター API の外部で独自の終了コールバックを指定することはできません。
これは、 Google グループで見つけた簡単なハックです。これをあなたSpecRunner.html
または同等のものに追加してください。
var oldCallback = jasmineEnv.currentRunner().finishCallback;
jasmineEnv.currentRunner().finishCallback = function () {
oldCallback.apply(this, arguments);
// Do your code here
};
jasmineEnv.execute();
于 2014-02-12T13:50:02.120 に答える