2

私はtestngを使用してセレンテストを実行しています。これは、hudson(ssh接続を使用)を介してSeleniumRCを使用するリモートシステムで開始されます。リモートシステムは、MKSToolkitがインストールされたWindowsXPであるため、sshです。テストはWindowsサービスとして実行されません。

私はcaptureScreenshotメソッドとcaptureEntirePageScreenshotメソッドの両方を使用してみました。最初のものは常に黒い画像を生成します。2つ目は正しいスクリーンショットを作成しますが、Firefoxでのみ機能し、テストは通常​​Firefoxで合格し、他のブラウザーでは失敗するため、他のブラウザー(主にIEとSafari)のスクリーンショットをキャプチャすることが重要です。テストは並行して実行され、同時に多くのブラウザウィンドウが開きます。これが問題の原因であるかどうかはわかりません。どんな考えでもありがたいです。

4

3 に答える 3

2

残念ながら、Selenium のスクリーンショットは、Firefox 以外のブラウザーでは最初から問題がありました。これは、私たち Selenium 開発者が修正するためにしばらく取り組んできたことです。

最新の作業は、IE で動作するように Snapsie を更新しています。http://blog.codecentric.de/en/2010/02/remote-screenshots-mit-selenium-und-dem-robot-framework/に、何が起こったかを説明するブログ投稿があります。

画面がアクティブでない場合、つまりスクリーンセーバーが作動している場合、黒いスクリーンショットが生成される可能性があることに気付きました。

編集:

ふと思ったことがあります。いつでもCastroを実行してテストをビデオ録画し、再生を見ることができます。これは、SauceLabs がクラウドで Selenium を実行するために使用するものです。

于 2010-02-26T15:24:46.413 に答える
1

このためのメソッドを作成し、スクリーンショットを撮る必要がある場所でそれを呼び出します。Selenium で使用されている java.awt パッケージを使用します。たとえば、このサイトを確認してください

于 2010-03-17T05:49:15.927 に答える
0

Windows 自動ログオンを設定し、Windows サービスとしてではなくプロセスを起動した後、 RDPセッションを通常の×ボタン:

%windir%\system32\tscon.exe %SESSIONNAME% /dest:console

詳細については、 https ://stackoverflow.com/a/24529629/658497 を参照してください。

(ただし、X Windows ボタンで RDP セッションを終了するときに、デフォルトのアクションとして実行する方法があればいいのにと思います)。

于 2014-07-27T13:21:57.840 に答える