5

Windows 7 マシンで、ターミナルで次のような PHPUnit Selenium コマンドを手動で実行した場合:

phpunit --verbose --log-junit _selenium_tests\results\home.xml _selenium_tests\frontend\home.php

ブラウザが生成され、テストが正常に実行されます。次に、画面に次のように出力します。

Time: 10 seconds, Memory: 3.50Mb
OK (1 test, 3 assertions)

そして、ターミナルは開いたままです。

正確なコマンドをコピーして空のファイルに貼り付け、名前を付けて保存してtest.batクリックすると、テストも実行されます。ブラウザが開いて、すべてのテストが実行されていることがわかります。唯一の問題は、直後に端末プロンプトを閉じることです。したがって、上記の出力は表示されません。

さらに大きな問題は、実行されなかった最初のテストの後に他のテスト用のコマンドを追加すると、ターミナルが閉じられるためです。

追加してみました:

pause

バットファイルの最後にありますが、うまくいきません。それでも閉じます。これを防ぎ、ターミナルを閉じずにコマンドを次々と実行できるようにする方法はありますか?

4

2 に答える 2

11

あなたの質問はこれに似ていますcallコマンドの前で使用してみてください。を使用せずに.bat別のファイルからファイルを実行すると、最初のバッチ ファイルに制御が戻らないため、実行されません。.batcallpause

于 2012-07-23T08:22:16.280 に答える
0
  • 試すcmd /K phpunit --verbose --log-junit _selenium_tests\results\home.xml _selenium_tests\frontend\home.php

    文字列で指定されたコマンドを実行しますが、そのまま/Kオプションです。http://www.computerhope.com/cmd.htmを参照してください。cmd /K string

  • phpunitまた、実行するコマンドのファイルタイプがわかりません。セレンについてはよくわかりません。バッチファイルの場合(つまり、で終わる場合.bat)、別のバッチファイルから呼び出すことはできません。2番目のバッチファイルの呼び出しの下にあるものはすべて実行されません。

    次に、コマンドを使用する必要がありますCALLCALL ユーザーが別のバッチファイル内からバッチファイルを実行できるようにします。http://www.computerhope.com/call.htm
    参照してください。

于 2012-07-20T21:30:30.847 に答える