問題タブ [site-prism]
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.
ruby - Site Prism, Capybara: 変数付きセレクター
カピバラでページ オブジェクト モデルを実装するために、site_prismをいじっています。とても面白そうです。
"[data-id='x']" (x は整数) などのセレクターを指定するにはどうすればよいですか? このようなもの:
そして、私のテストでは:
ruby - site_prism では、CSS 以外のセレクターを使用できますか?
Capybara で Page Object Pattern を使用できるようにする gem を研究しています。私は site_prism を見つけ、非常に有望に見えます。
私の質問は、css 以外のセレクターで要素を定義する方法はありますか? Xpath、Dom、要素の id などのように。
よろしくお願いします!
ruby - サイトプリズムの補間で要素とロケーターを定義しますか?
サイトプリズムジェムを使用しているときに、文字列またはシンボルの補間を使用して要素とロケーターの両方を定義する方法があるかどうかを知っていますか?
私はこのようなことをしようとしています:
しかし、実行時に次の構文エラーが発生します。
構文エラー、予期しないtSYMBEG、keyword_doまたは'{'または'('(SyntaxError)element: "adult#{index}"、 "#passenger-first-name-#{index}"が必要です
私はここでシンボルが補間を許可することを読んでいました:http ://www.robertsosinski.com/2009/01/11/the-difference-between-ruby-symbols-and-strings/
多分私は何かが欠けていますか?どうもありがとう!
ruby - id、title、linkなどでsite-prismを介して、またはcssセレクターのみで要素を見つけることができますか?
統合テストにsite-prismgemを使用することで、id、title、link、xpathを参照してページ要素を見つけることができますか、それともcssからのみ検索できますか?
ruby - site_prism に html ファイルをロードすることはできますか?
html を SitePrism オブジェクトとしてロードする必要があります。これは可能ですか?ドキュメントで見たところ、特定の URL を使用してのみナビゲートできます。アプリの相対パスに html を保存し、その URL を site_prism でロードする必要がありますか? それとも、これを行うための他のよりクリーンな方法を見ていますか?
ありがとう!ロドリゴ・J・マーティン
ruby - ページオブジェクトパターンを使用してカピバラのステップをクリアするにはどうすればよいですか?
Page Object Pattern gem 'site_prism' を使用した次のステップ定義があります。
それは正常に機能しますが、非常に重く、美しくありません。カピバラのwithinメソッドのように書く方法はありますか?以下は機能しません (エラー:「メインを文字列に変換できません (TypeError)」)
ruby - Rspec と Capybara 機能仕様で SitePrism を使用する
最近、rubyweekly のメールで SitePrism を発見しました。すごいですね。私はそれが未来になるのを見ることができます。
私が見た例は、ほとんどキュウリのステップです。rspecでSitePrismを使用する方法を理解しようとしています。
ホームページに @home_page、login_page に @login_page と仮定すると、それは理解できます
ただし、よくわからないのは、たとえば「ログイン」リンクをクリックすると、カピバラのブラウザーがログインページに移動すると思う場合です-ログインページのインスタンスにロードせずにアクセスする方法です.
それはうまくいきそうです。したがって、特定のページにいることがわかっている場合は、そのページのインスタンスを作成し、page.find("a[href='/sessions/new'] のようにカピバラの「ページ」コンテキストを作成します。 ") は最後の SitePrism オブジェクトに転送されますか?
ここで何かが欠けているような気がします。私は遊んで、私が理解できることを見ていきます-何かが欠けているかもしれないと思っただけです. 私はソースを調べていますが、誰かがこれを理解している場合は...気軽に共有してください:)
ruby - site-prism にキュウリの World コンセプトを含める
サイトプリズムにキュウリのワールドコンセプトを含めるには? そのため、World に test_site クラスを含めることができ、ステップ関数で毎回 test_site クラスをインスタンス化する必要がなくなります。出来ますか?
カピバラとサイト プリズムで Ruby を使用しています。レールではありません!!!
私の test_site クラスは次のとおりです。
私はこのようにすることはできませんか?
ruby - Site Prism でドロップダウンからアイテムを選択するにはどうすればよいですか?
SitePrism ページ内で次の要素を定義しています。
そして、キュウリのステップ定義には、要素の値に基づいて選択ボックスから項目を選択する次のコードがあります。
この実装はあまり好きではありませんが、クロムでカピバラを実行すると完全に機能しますが、ヘッドレスで実行すると失敗するため、ドロップダウン項目を選択するための代替/より良い方法が必要であると考えています.
理想的には のようなことができるようになりたいのですが@app.new_r.r_type.select 'value'
、SitePrism でこれを行う方法がわかりません。
私の最初の質問は、SitePrism の値に基づいてドロップダウンからアイテムを選択するエレガントな方法を誰かが推奨できるかどうかです。
2 番目の質問は、ヘッドレスで実行したときに上記のコードが失敗する理由を教えてください。