2

私は、a) 関数を使用してオブジェクトを宣言し、b) 外部で宣言されると予想されるハッシュを使用してそのオブジェクトの init 関数を呼び出す JavaScript ファイルを使用しています。私のジャスミンの仕様は、そこにないため、ハッシュが見つからないと不平を言っています!

var Foo = {
  init: function(param) { ... }
};

Foo.init(externalVariable);

私の最初の気持ちは、これは構造が悪く、変数を宣言するだけでなく、外部宣言も関数を呼び出す必要があるということですが、今は無視しましょう。

ソースファイルをロードする前に、この変数を Jasmine に宣言する方法はありますか?

ありがとう

4

1 に答える 1

3

それが実際にグローバルである場合は、グローバル オブジェクトに値を割り当てます。テストが終了したら、他のテストのために環境をきれいに保つために、忘れずに削除してください。

beforeEach(function() {
  window.externalVariable = "this kinda sucks";
});

afterEach(function() {
  delete window.externalVariable;
});
于 2013-01-19T01:50:33.477 に答える