私はPHPUnitでSeleniumを使用していますが、ブラウザがclickAndWait
呼び出しを無視して原因と思われるエラー状態でテストが失敗することがあります。テストの実行では、(たとえ大きなタイムアウトを設定しても)あまり遅れずにclickAndWait
コマンドを受け取り、次のアサーションまたは要素のアクセスは失敗します。スクリーンショットを作成すると、前のページがクリックコマンドがまったく起こらなかったかのように表示されます。これは、非確定的に、リンクとサブミットボタンの両方(通常、どちらもjavascript:
またはそれに類するトリッキー)で起こります。特定のコントロールでは他のコントロールより頻繁に発生するように見えます(多くは影響を受けません)。また、テストの失敗頻度は短期的にはそれほど変化しませんが、長期的には大きく変化します、時には1/2)。私はそれが何らかの種類のサーバ負荷の影響を受けていると推測していますが、明らかな相関は見られませんでした。クリックが常にSeleniumで機能するとは限りません
2
A
答えて
2
私はセレン2でもっと仕事をしていますが、私もこれに気付きました。私の場合、私は自分のマシンでテストを実行して以来、他のシステムクリックがSelenium(純粋に投機)を妨害していると思われます。
私が解決した方法は、のキーを返す代わりにキーを送信することでした。ほとんどの場合、これはクリックに相当し、私の経験ではより安定したテストが作成されています。
このテクニックがバージョン2.3.0の後で私のために機能しなくなったということです。私はあなたが見てみたい場合はbug reportを提出しました。
関連する問題
- 1. CodeIgniterのflashdataが常に機能するとは限りませんが、userdataは常に機能しますか?
- 2. jQuery UI - 最初のクリックでボタンセットボタンが常に機能するとは限りません。
- 3. Djangoのマイグレーションが常に機能するとは限りません
- 4. ディレクトリにショートカットをプログラム的に作成するC#が常に機能するとは限りません
- 5. Googleマップストリートビューが常に読み込まれるとは限りません - うまく機能しない方法
- 6. クッキーが常に保存されるとは限りません>クッキーベースの機能をトリガーする
- 7. ページが常にレンダリングされるとは限りません
- 8. ASMXサービスが常にデータを返すとは限りません
- 9. Python selenium webdriverクリック機能
- 10. Selenium WebDriverWaitでも "要素はポイントでクリック可能ではありません"
- 11. クリック機能が動作しません
- 12. selenium webdriver python:要素はポイントでクリック可能ではありません
- 13. this.offsetはクリック機能内の関数ではありません
- 14. selenium firefoxdriver testsは、クリックすることはできません
- 15. PHP:register_shutdown_functionがsymfony 2で常に動作するとは限りません
- 16. ChromeとIEでは正常に機能しますが、FireFoxでは機能しません
- 17. Jクエリのクリック機能が機能していませんか?
- 18. infowindowからのズームリンクが常にレンダリングするとは限りません
- 19. WInforms Combobox SelectionChangeCommittedイベントが常にSelectedValueを変更するとは限りません
- 20. IE 8 - スクリプトが常に読み込まれるとは限りません
- 21. jQueryが常に読み込まれるとは限りません
- 22. Selenium Javaポップアップ認証「http:// user:[email protected]」が機能しません
- 23. Selenium:要素へのマウスの移動が機能しません
- 24. 権限の拒否 - 権限が機能しません。
- 25. NSUserDefaultsがNSStringデータを常に保存しているとは限りません。
- 26. イベントログIPAddressが常に解決されるとは限りません
- 27. FinderSync:beginObservingDirectoryAtURLが常に呼び出されるとは限りません
- 28. リンクをクリックすると完全に動作しますが、コピー貼り付けURLは機能しません。
- 29. setNeedsDisplayが常にdrawRectを呼び出すとは限りません
- 30. perf annotateが出力を常に出すとは限りません