0

私は現在、オートメーション QA で働いています。Java を使用したプロジェクト: jbehave、thucydides、selenium。私たちはUbuntu OSで作業しています。

テストを実行するたびに、セレンのすべてのクリックまたはアクションがドライバーウィンドウ(クロムドライバーを使用している)をフォーカスしている(ウィンドウをアクティブにする)ため、すべて(コーディング、Webの閲覧)を停止する必要があります。私はテストを台無しに何かをします。このため、私たちのチームは多くの時間を無駄にしています。

Phantomjs を試してみましたが、正しく動作しない、要素が見つからないなど... また、vagrant を使用して仮想マシンでテストを実行することもできません (会社固有の理由により)。

バックグラウンドでさまざまなアクションを実行し続ける限り、Chrome ドライバーが起動時にアクティブなウィンドウを引き継いでも問題ありません。奇妙ですが、以前のプロジェクト (windows、c#、mstest) では、chromedriver は追加のセットアップなしでこのように動作します。助けてください。この問題を抱えているチームは他にほとんどありません。この問題は Mac と Linux でのみ発生するようです。

4

2 に答える 2

0

この問題を長い間抱えていた後、ようやく良い解決策を見つけました。この問題はまだ ChromeDriver レベルで残っているため、こちら側で更新がある場合はお知らせください。

Ubuntu でバックグラウンドでテストを実行する最も簡単な方法は、VNC サーバーを使用することです。従うべき手順は次のとおりです。

  1. ubuntu ターミナルから vnc サーバーをインストールします。

    sudo apt-get install vnc4server

  2. 任意の番号でサーバーを起動します (私は 7 を使用します)。初めて行う場合は、vnc サーバーのパスワードを入力します (覚えておいてください! )。

    vnc サーバー :7

  3. サーバーを全画面表示で起動するには、最後のコマンドに「geometry」を画面解像度とともに追加します。例:

    vncserver :7 -ジオメトリ 1920x1080

  4. VNC Viewer をダウンロードします。リアル VNC を使用しています。

  5. Real vnc ビューアーに移動し、新しい接続を開始して、次のように入力します。

    VNC サーバー: localhost:7

    暗号化: VNC サーバーに選択させる

  6. 接続を押して、vnc サーバーのパスワード (ステップ 2 のもの) を入力します。

  7. 新しいウィンドウが開き、その中で新しいターミナルを開きます。

  8. ターミナルからテストを実行します。私はJava Mavenプロジェクトを使用しているので、私にとってはこのように機能します。プロジェクト フォルダーに移動して実行: mvn clean install

端末のみを使用して (vncviewer を開かずに) 非表示モードでテストを実行するだけの場合は、次のコマンドを使用します。

CD パス/to/プロジェクト

xterm -display localhost:7 -e mvn クリーン インストール

サーバーを停止する場合: vncserver -kill :7

これが多くの人に役立つことを願っています。

于 2014-09-08T09:44:18.867 に答える
0

回答を削除しました。エラーを再現しましたが、指定された解決策は機能しません。

于 2014-09-19T13:17:05.937 に答える