問題タブ [page-object-gem]
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 - Ruby を使用した PageObject - テキスト フィールドにテキストを設定すると、メイン ファイルでのみ機能します
ラジオ ボタンで選択されたオプションのリストを含むページを持つサイトを自動化しています。ラジオの 1 つを選択すると、テキスト フィールドと選択リストが表示されます。
テスト (ruby test_contracting.rb) を実行するファイル (test_contracting.rb) と、ページを表す他のクラスを作成しました。
私のクラス ContractPage には、次の要素宣言があります。
ContractPage で、ドメインの構成を次のように設定するメソッドを作成しました。
test_contracting.rb から configure_domain メソッドを呼び出すと、ラジオ ボタンが選択されますが、フィールドに値が入力されません。パラメータはメソッドに正しく取り込まれています。「puts」を使用して確認しました。パラメータを「bla」のような一般的な文字列に変更しても機能しません。厄介な点は、test_contracting.rb でまったく同じコンポーネントを呼び出すと、機能することです。
私がうまくいったのは、configure_domain メソッドで以下を実装することでした。
その後、うまくいきました。
私が参照として使用している PageObjects モジュールのドキュメントは、 http ://rubydoc.info/github/cheezy/page-object/master/PageObject/Accessors#select_list-instance_method にあります。
オブジェクトの値を設定するためにページオブジェクトによって自動生成されたメソッドがこのスコープ/コンテキストで機能しなかった理由について説明がありますか?
ちなみに、友人が Java で同じことを試みましたが、同様に失敗しました。
ruby-on-rails - page-object gem との Capybara の統合
page-object gem と capybara を使用して Ruby on Rails のテストを自動化することはできますか? テストを開始した後にページ オブジェクトにアクセスしようとすると、次のエラーが表示されます。
カピバラのブラウザーインスタンスをページオブジェクトに渡す必要があると思うので、これは理にかなっています。他の誰かがこれを試したことがあるかどうかはわかりません。
ruby - ページオブジェクトの重複チェックボックスが定義されていませんか?
購入ボタンを表示できるチェックボックスをクリックしようとしています。使用しようとすると、「NoMethodError: undefined method 'eula' for Cart:0x101f54810」というエラーが表示されます。同一のチェックボックスが 2 つあるためと思われますが、確かではありません。
HTML:
私のクラス:
更新: オブジェクト タイプを変更して動作させようとしていました。要素は、私が試した最後のタイプでした。例をチェックボックスに戻しました(最初の試み)。ご指摘ありがとうございます。
ruby - 動的ページのURL
動的なURLのページがあります。それをビュー投稿ページと呼びましょう。投稿1のURLはで、投稿site.com/post/1
2のURLはですsite.com/post/2
。
これは、私が正しいページにいるかどうかを確認するために現在行っていることです。
ページ:
きゅうりのステップ:
もっと良い方法はありますか?URL全体をチェックするのか、それともsite.com/post/
一部だけをチェックするのか。
最新のページオブジェクトgem(0.6.6)を使用しています。
アップデート
さらに大きな問題は、動的URLを持つページに直接移動することです。
ページ:
きゅうりのステップ:
私が今していることは、キュウリのステップを次のように変更することです。
ページがIDを知る方法があればいいのですが、その方法はまだわかりません。
ruby-on-rails - Cucumber の複数の機能に同じブラウザ インスタンスを使用するとエラーが発生する
Cucumber ドライバーのブラウザー インスタンスの作成に問題があります。「Before do」内のenv.rbにオブジェクトを作成すると、次のようになります。
…正常に動作し、機能ごとに新しいブラウザを開き、「実行後」に閉じます。
新しいブラウザがすべての機能を起動して閉じるため、実行が遅くなります。しかし、すべての機能に対して同じブラウザー セッションを使用するために「実行前」から @browser を作成すると、次のエラーが発生します。
...テストをまったく開始していません。私は page-objects gem、ruby-on-rails を使用しています...
私が間違っていることを教えてください。どうもありがとう!
watir - チェックボックスで廃止されたページオブジェクトを回避する方法
私は1年前からキュウリを使用しており、数週間からpage-object-gemを追加しています。テストを実行すると、次のメッセージが表示されます。
非推奨の警告
commentPage.rb:23:in `block indelete_comment'でcheckboxという名前のメソッドを呼び出しています。
このメソッドはページオブジェクトに存在しないため、ドライバーに渡されます。
この機能は近い将来削除される予定です。
正しいページオブジェクトメソッドを呼び出すようにコードを変更してください。
(他の場合も同じですが、この「些細な」例の方が説明しやすいはずです)
私はそれを回避する方法を探していますが、それは複雑なようです。
テストのために、私はテーブルがあるページをチェックしています。各行には行が表示されます。特定の行のチェックボックスをオンにする必要があります。
pageObjectの私のコード:
テスト中にテーブルを使用するには、テーブルの前処理が必要でしたか?
watir - PageObjectでcssを使用して要素を取得する方法
テストを追加するプロジェクトでは、「取得」するのが複雑な要素がいくつかあります。
私のテキストエリアのhtml:
今のところ、この行を使用して値を設定します
PageObjectで、要素を宣言して使用する必要があります。
しかし、使用するとこのエラーが発生します:
私はどこが間違っていますか?
ruby - Ruby PageObject でオブジェクト数を取得する
他のいくつかの要素のリストであるページがあります。このページのページ オブジェクトを作成し、それらのリスト オブジェクトをカウントし、そのカウンターでオブジェクトを使用して何らかのアクションを実行する機能を備えたいと考えています。
これで、次のようなクラスができました
たとえば、最初のフィード項目には次のような xpath があります
2番:
等
ページオブジェクトの番号で同様のxpathを持つアイテムを取得するにはどうすればよいですか?
ruby - キュウリのステップで、別のステップのページ オブジェクトによって設定された変数を確認する
Cheezy の PageObject を使用して、いくつかのキュウリ テストをセットアップしています。Jeff Morgan の本 "Cucumber & Cheese" のように、ほとんどすべてをセットアップしています。
現在、変数@tagを設定するメソッドを持つページオブジェクト「PublishPage」セットアップがあります。たとえば、私はファイル publish_page.rb に持っています
Cucumber のステップでは、ステップの 1 つに がありon_page(PublishPage).tag
、別のステップに がありon_page(PublishPage).verify_tag
ます。私のenv.rbファイルにはrequire 'rspec-expectations'
.
問題は、このコードを実行すると、というエラーが表示されることundefined method 'include' for #<PublishPage:xxxxxx>
です。しかし、verify_tag メソッド内のコードをステップに移動すると、@tag にアクセスできないことを除いてすべてが機能します...
page-object-gem - PageObject :: Accessoriesにdivsメソッドを含めることはできますか?回避策は問題ありませんか?
ページオブジェクトで、特定の方法で複数のdivにアクセスしたいと思います。
これは、一致する最初のdivへのアクセスです。
これは、DivがPageObject::Accessorsに存在する場合に一致する複数のdivへのアクセスになります。
これまでに試しました:
ページオブジェクト内でこれを行うためのより良い方法を誰かが提案できますか?
前もって感謝します...