2017-12-13 25 views
0

私は2.1.1、ruby 2.3.1p112のphantomjsを使用しています。ここに私のコードは次のとおりです。ポラテジストが時々要素を見つけることができません

Capybara.default_driver = :poltergeist  
    page.find('input[type="submit"]').trigger("click") 
    page.should have_content("#{user.email} created.") 

このコードは、chormeのとFirefoxのwebdriverを上で動作しますが、ポルターガイストと、時々動作しません。どうしてか分かりません。誰でも助けてくれますか?

+1

それらのドライバが 'trigger'をサポートしていません(と、とにかくテストを行う場合は、' trigger'を使用すべきではない)ので、以来、クロムまたはFirefox上のコード中華鍋その方法はありません。それ以上の助けを得るためには、あなたが得ている正確な失敗メッセージと、やり取りしようとしているHTMLの例を提供する必要があります。https://stackoverflow.com/help/how-to-askを参照してください。 –

+0

クロムやfirefoxで実行すると申し訳ありませんが、私はfunktionをクリンクするトリガーを変更します – beginerdeveloper

+1

次に、Poltergeistで 'trigger'を使用する必要がある理由を理解し、その問題を修正する必要があります(間欠的な障害も修正されるでしょう)。あなたのテストが実際にユーザーがやっていることをしているわけではないので、疑わしい値を持っているので、アプリケーションをテストするときには(可能であれば、それをうまく動かすだけで)できるだけ避けてください。 –

答えて

1

PhantomJSはもはや積極的にサポートされていません。 Chromeヘッドレスまたは他のヘッドレスブラウザソリューションを使用します。

+0

私はそのヘッドレスブラウザに関する重要な仕事を与えることができます – beginerdeveloper

+1

私はよく分かりません私はあなたの質問を完全に理解しています。これは頭​​のないクロムです:https://chromium.googlesource.com/chromium/src/+/lkgr/headless/README.mdもう一つの選択肢はSlimerJS https://slimerjs.org/です始める方法に関する文書。 – Dono

+0

ありがとう、これは私が必要なものです – beginerdeveloper

関連する問題