問題タブ [ghostdriver]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
testing - テストが失敗したときにPHPUnitとSelenium2でスクリーンショットをキャプチャする方法は?
私はPhantomJSでPHPUnit 4.6とPHPUnit Selenium 1.4.2を使用しています。Selenium テストが失敗したときに、最後のページのスクリーンショットをキャプチャしたい。PHPUnit ManualにはSelenium 1 の例がありますが、GhostDriver を使用する必要があるため、Selenium 2 で使用しようとしています。
WebTestCase.php
Test.php
しかし、これはスクリーンショットをキャプチャしません。
rspec - PhantomJS が断続的に接続を拒否する
Ruby 2.1.0、watir-webdriver、rspec、taza、および PhantomJS 1.9.8 を使用しています。OSはLinux tester 3.2.0-4-686-pae #1 SMP Debian 3.2.65-1+deb7u1 i686 GNU/Linux
.
Watir::Browser.new
以下のコマンド ライン パラメータを指定してPhantomJS を実行します--ignore-ssl-errors=true --ssl-protocol=any --debug=true --cookies-file=/tmp/cookies.txt
。
最初に断続的に失敗する単一の仕様ファイルがあります (合格するよりも失敗する可能性が高いと思います): Connection refused - connect(2) for "127.0.0.1" port 8910
. その間に、これをnetstat -tulpan
示します:
合計で約 90 ポート。終了後も開いたままrspec
です。この失敗の断続的な性質に困惑しています。他の誰かが同じ問題に遭遇しましたか? アドバイス、推奨事項、リンクなどは大歓迎です。ありがとうございました。
UPD: 詳しく調べたところ、ある時点で PhantomJS が webdriver からの接続をドロップし始めることがわかりました: -> [SYN], <- [RST, ACK]。プロセスはメモリに残りますが、PhantomJS はエラー ログを保持しないため、原因がまったくわかりません。
java - PhantomJSDriver を使用した Selenium テストがハングし、終了していません
まず、ローカル webapp を開始します。
次に、Eclipse で次のテストを JUnit テストとして実行すると (with -Dbrowser=phantomjs
):
テストは決して終わらない。ぶら下がっているようなものです。(ブラウザで同じURLを開くとwebappが表示されます)
これはコンソール出力です:
また、ありませんphantomjsdriver.log
(ログに記載されているもの)。
有用な場合、これらは依存関係です。
javascript - 取得エラー: Ghost ドライバーを開始できませんでした
Ghostdriver
Openshift サーバー内で実行しようとしています。このコマンドを実行すると:
./phantomjs --webdriver=15002
それは言います:
助けてください。 からこのエラーが発生してい10 Days
ます。私はすべてを検索し、すべてをグーグルで検索しました。何も解決されていません:(私はとても動揺しています:(
助けていただければ幸いです!!
python - Phantom JS ドライバーが要素を見つけられない場合がある
私は PhantomJS を初めて使用し、phantomjs ドライバーを使用してセレン テスト (python) を実行しようとしていますが、Web 要素は実行されません。
Ghostdriver ログ:
興味深いのは、phantomjs を正常にインストールした後、ログイン テストを実行したところ、問題なく合格したことです。次に、上記と同じ理由で失敗した別のテストを実行しました。合格した Login テストを再度実行しようとしましたが、phantomjs ドライバーは要素を見つけられなくなりました。
これの原因は何ですか?
ちなみに、これらのテストは chrome と FF で問題なく動作します。
selenium - Geb/Selenium テストが新しいページのロード中にハングする
私の Selenium テストは、CI で頻繁に無期限にハングアップし、常に新しいページをロードしようとしますdriver.get
。PhantomJS 1.9.8 を使用しています。
数回のデバッグの後、Web ページの読み込みが PhantomJS で完了しないという問題を突き止めたと思います。
Selenium RemoteWebDriver が PhantomJS/GhostDriver にリクエストを送信し、応答を待っています。
GhostDriver は引き続きリクエストを受け付けています。ヒットすることでスタックしているページを確認できます。さらに、コマンドラインから同じページcurl http://localhost:port/session/:sessionId/url
を再リクエストすると ( )、ブロックされた Selenium リクエストが中断したところから魔法のように再開されます。curl -d '{"url": ...}' http://localhost:port/session/:sessionId/url
更新: Ghostdriver 自体はハングしていません。ただし、デフォルトのタイムアウトは基本的に無限です。ページ読み込みタイムアウトを指定すると、たとえばmanage().timeouts().pageLoadTimeout(60, TimeUnit.SECONDS)
PhantomJS で問題が発生すると、GhostDriver はタイムアウト付きのエラー応答を返し、テストは失敗し、ビルドは続行されます。
PhantomJS 自体をデバッグすると (--debug=TRUE)、失敗した時点でこれがログの最後に表示されます。
2015-03-21T21:26:39 [DEBUG] WebPage - updateLoadingProgress: 86
(その後、タイムアウトになるまで何もありません)
ハングした時点での Java 側からのスタック トレースは次のようになります。
これと似ていますが、Firefox の代わりに PhantomJS を使用しています。