2017-06-29 8 views
-1

のを待ち、私はこの答えは、しかし、私は角が終了するまで待つように実行するために、JSコードの類似した作品を探してangularjsアプリが、角度2. Testing AngularJS with Selenium角度使ってPython

をテストしていないよ発見しました。

私はアプリに触れる前に待つのに使うデコレータのアイデアを思いつきましたが、スクリプトが好きなことは分かりませんでした。私はclientsidecripts.jsを見ましたが、私はAngularデベロッパーではありませんそれはng1hooksとtestabilityを得るようだ...多分私はいくつかのビットとピースを追加し、jsファイルに入れて、それを実行する例この男https://github.com/kpodl/pytractor/blob/master/src/pytractor/protractor/extracted/waitForAngular.jsようですが、再び、これは2015年

def angular_wait_required(f): 

     def wrapped_f(self, *args, **kwargs): 
      self.driver.set_script_timeout(30) 
      self.driver.execute_async_script(WAIT_FOR_SCRIPT) 
      f(self, *args, **kwargs) 
     return wrapped_f 
+0

最後に思い付いたです。私にそれを編集したり、誤植を訂正する機会を与えなかった – rafalf

答えて

0
WAIT_FOR_SCRIPT = """ 
     callback = arguments[arguments.length - 1]; 
     try { 
      var testabilities = window.getAllAngularTestabilities(); 
      var count = testabilities.length; 
      var decrement = function() { 
      count--; 
      if (count === 0) { 
       callback('completed'); 
       } 
      }; 
      testabilities.forEach(function(testability) { 
       testability.whenStable(decrement); 
      }); 
     } catch (err) { 
      callback(err.message); 
     } 
     """ 

からこれは私が甘い

関連する問題