2016-09-20 4 views
0

モカのテストのために、モカbefore()フックにParse.Userを設定しようとしています。 Before()ブロックからParse.User.signup()を返すと、Mochaは常にタイムアウトします。関数(宣言)宣言を使用し、Parse.Promiseで.then(done、done)を返すとタイムアウトになります。モザ前()ブロックのParse.Promiseは常にタイムアウトをトリガーします

Promiseを返すParse.User関数の呼び出しが実行されるように、どのようにMocha before()を構造化する必要がありますか?

私の現在の解析Javascriptコード:

describe("a thing", function(){ 

    var user; 

    before(function(){ 
     var test_user = new Parse.User(); 
     test_user.setUsername("test_user"); 
     test_user.setPassword("test_password"); 
     test_user.setEmail("[email protected]"); 
     return test_user.signUp({"DisplayName": "test_display"},null); 
    }); 

    it("tests a thing", function()......); 
}); 

私も試してみた:

describe("a thing", function(){ 

    var user; 

    before(function(done){ 
     var test_user = new Parse.User(); 
     test_user.setUsername("test_user"); 
     test_user.setPassword("test_password"); 
     test_user.setEmail("[email protected]"); 
     test_user.signUp({"DisplayName": "test_display"},null).then(done,done); 
    }); 

    it("tests a thing", function()......); 
}); 
+1

まず最初に示されたことは、タイムアウトを増やすことです。場合によっては、操作が予想より長くかかることがあります。 – Louis

+2

両方のメソッドがタイムアウトしている場合は、操作が2秒以上かかるためです。 – robertklep

+0

DBに少しの遅延があったため、タイムアウトが問題でした。 – omphe

答えて

0

ここでの問題は、実際にタイムアウト私の地元のMongoDBコンテナに話をしたり、私のCIサーバー上のいずれかに発生しましたリモートDBに話す。私は、追加のタイムアウトフラグと私のモカ・テストを実行し、より長い応答時間を予測した環境で

npm run test -- -t 10000 

ソリューションをしようとするrobertklep

関連する問題