Jasmine でいくつかのテストを作成しようとしていますが、コードに非同期のコードがあると問題が発生しbeforeEachます。
サンプル コードは次のようになります。
describe("Jasmine", function() {
var data ;
beforeEach(function(){
console.log('Before each');
getSomeDataFromRemote(function(res){
data = res;
});
});
it("test1", function() {
expect(data).toBe(something);
console.log('Test finished');
});
});
でわかるように、リモートからデータを取得して、非同期beforeEachに に割り当てます。data
しかし、test1私が確認しようとすると:
expect(data).toBe(something);
はまだ終わっていないundefinedので、データはです。getSomeDataFromRemote
修正方法は?