2017-10-20 10 views
0

コードテストテストを実行すると、受け入れテストでブラウザが遅すぎる、テストが開始されるのを待たずに、ブラウザが起動する前にテストに合格するエラーが発生する。ブラウザ起動前にコード化受諾テストが実行される

[ConnectionException] http://127.0.0.1:4444/wd/hubのWebdriverに接続できません。 Selenium ServerまたはPhantomJSが動作していることを確認してください。

#1 Codeception \サブスクライバ\モジュール - >

前#2 D:\パス\のYii \基本\ベンダ\ symfonyの\のイベントディスパッチャ\ EventDispatcher.php:212

#3 D: \ path \ Yii \ basic \ vendor \ symfony \ event-dispatcher \ EventDispatcher.php:44

ブラウザが一度も起動しなかった。

マイコマンド:

C:\Windows\System32\cmd.exe /K "cd /D D:\path\Yii\basic && vendor\bin\codecept run" 

acceptance.suite.yml:

class_name: AcceptanceTester 
extensions: 
    enabled: 
     - Codeception\Extension\RunProcess: 
      - java -jar -Dwebdriver.chrome.driver="D:/Selenium/chromedriver.exe" -Dwebdriver.gecko.driver="D:/Selenium/geckodriver.exe" "D:/Selenium/selenium-server-standalone-3.6.0.jar" 
modules: 
    enabled: 
     - WebDriver: 
      url: https://hotel.localhost/ 
      browser: chrome 
     - Yii2: 
      part: orm 
      entryScript: index-test.php 
      cleanup: false 

codeception.yml

actor: Tester 
paths: 
    tests: tests 
    log: tests/_output 
    data: tests/_data 
    helpers: tests/_support 
settings: 
    bootstrap: _bootstrap.php 
    memory_limit: 1024M 
    colors: true 
modules: 
    config: 
     Yii2: 
      configFile: 'config/test.php' 
      cleanup: false 

coverage: 
    enabled: true 
    whitelist: 
     include: 
      - models/* 
      - controllers/* 

は、事前にありがとうございます。

答えて

1

文書番号hereのようにRunProcessの設定にいくつかのスリープを追加します。

プロセスが起動するまで待機するには、スリープオプションを使用します。このケースでは、オブジェクトとして指定するための設定が必要です。

extensions: 
    enabled: 
     - Codeception\Extension\RunProcess: 
      0: java -jar ~/selenium-server.jar 
      1: mailcatcher 
      sleep: 5 # wait 5 seconds for processes to boot 
+0

をありがとう!ブラウザの起動が適切に検出されないと私は驚いています。経験的に選択された値を十分に考慮しなければなりません。 –

関連する問題