問題タブ [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 - これが「nil を文字列に変換できません」を返す理由
Jeff Morgan の本「Cucumber & Cheese」とほぼ同じセットアップを使用しており、このようなページ オブジェクトがあります。
Cucumber ステップで次のコマンドを実行すると、各コマンドは独自のステップで失敗し、cannot convert nil to string
. インスタンス変数 @tag に関係していることはわかっていますが、その理由はわかりません。
ruby - Supportフォルダーのclass.rbからページオブジェクトを呼び出す方法
ページオブジェクトgemを使用しています。features/bussines/pages/booking_page.rb
次のようなページのページオブジェクトがあるとします。
features/support/tools.rb
...そして私は次のような場所にある「ツール」クラスを使用します。
...しかし、クラスからオブジェクトを呼び出すことは許可されていないため、このアプローチは失敗します。
クラスからページオブジェクトを使用する途中でいくつかの概念が欠落していることは確かですが、何が問題なのかわかりません。ここで何が悪いのか考えていただけませんか。
どうもありがとうございます!
============================
ジャスティンは、クラスへの呼び出しがクラッシュする理由を見つけました。最終的なクラスコードの結果は次のとおりです。
そして、関数の呼び出し:
なぜそれがうまくいかなかったのですか?2つの主な理由:
- ブラウザオブジェクトをクラスに渡さなかった<==必須
- 「on」メソッドのクラス<==REQUIREDにPageObject::PageFactoryを含めませんでした。
皆さんありがとう!
ruby - このRuby whileステートメントが機能しないのはなぜですか
背景: これは page-object と Rspec を使用しています。ページ、オブジェクトが正しく設定されています。label
基本的に何が起こっているかというと、while ステートメントをスキップして、ページに存在する変数のチェックに直接進むことです。
すべきことは、label
変数がページ上にあるかどうかを確認し、そうでない場合は 20 秒待ってページを更新し、最大 30 回まで再度確認し、30 回目に失敗した場合はすべて失敗するはずです。見つかった場合は、再度チェックしてパスする必要があります。
何が起こっているかcurrent_page.text.should include label
は、常に TRUE を返す場合だと思いますが、よくわかりません。さらに情報が必要な場合は、お知らせください。
ruby - page_object 要素の attribute_value を取得するには?
次のような画像があると想像してください。
そのクラスの値を取得する方法は次のとおりです。
Ok。私は page_object gem を使用しており、次のように画像を要素として持っているとします。
attribute_value を取得するには、次を使用できます。
...しかし、非推奨の警告が表示されます:
class
page_object 要素を使用して値を取得するにはどうすればよいですか? 確かに答えは簡単ですが、私はそれを見つけられませんでした。道を教えてください。
前もって感謝します!
ruby - page_object要素のhtmlソースを取得するには?
(Watir 言語で) 次のような div があるとします。
「魔法の正規表現」を実行するには、内部にhtmlコードが必要です:)。div html コードを取得する方法は次のとおりです。
Ok。私は page_object gem を使用しており、次のように要素として div があるとします。
内部でhtmlを取得するには、次を使用できます。
...しかし、非推奨の警告が表示されます:
page_object 要素を使用して HTML コードを取得するにはどうすればよいですか? 私が以前に行ったいくつかの同様の質問のように、答えはとても簡単ですが、Cheezyの本、stackoverflow全体、およびページオブジェクトのrubydoc情報を調べましたが、見つかりませんでした。道を教えてください。
前もって感謝します!
ruby - 生成されたフィールドの量がわかっているページオブジェクト
私はを使用してRuby
おりWatir-webdriver
、Page-object gem
自動テストのために仕事をしています。
テキストフィールドの量の点で本質的に動的なページに人々がどのようにアプローチするのか疑問に思っています。私が現在作業しているページには'key' / 'value'
ペアリストがあり、必要な数だけ追加できます。
私はちょうど私がアクセスできることを知っています
しかし、存在しない可能性のある大量のアイテムをサポートページに入力するのは少し面倒です。
私が見逃しているこれへのより良いアプローチはありますか?
ruby - モンキーパッチPageObject::PageFactory#visit_pageは良い考えですか?
開発者は最近、ページが開かれるたびにテストでJavaScriptを実行できるかどうかを尋ねました。詳細については、バグ44299を参照してください。
javascriptの実行は簡単です。
ページを開くためにpage-objectを使用しています。#visit_page
上記の例のjavascriptがページが開かれるたびに実行されることを確認する簡単な方法は、#visit_page
メソッドにモンキーパッチを適用することです。
alias_method
チェーン(質問4470108から)はそれを行う簡単な方法のように見えます。
もっと良い方法はありますか?
ruby - Nokogiriでテーブルをスクレイピングし、JSON出力が必要
したがって、複数の行と列を持つテーブルがあります。
別の表もあります。
従業員の順序はテーブル間でランダムである可能性があることに注意してください。
nokogiriを使用して、各従業員をオブジェクトとして、合計時間と収益を含むjsonファイルを作成するにはどうすればよいですか?
現在、いくつかのxpathを使用して個々のテーブルセルを取得することができます。例えば:
編集:
ページオブジェクトgemと@Dave_McNullaからのリンクを使用して、このコードを試して、何が得られるかを確認しました。
ただし、何も返されていません。
データ:https ://gist.github.com/anonymous/d8cc0524160d7d03d37b
時間表の複製があります。最初のものは大丈夫です。必要なもう1つのテーブルは、アクセサリの収益テーブルです。(アクティベーションテーブルも必要ですが、時間とアクセサリの収益テーブルをマージするコードからそれをマージしようとします。
ruby - 共通のページ要素-継承できますか?
cucumber / Watir-webdriver / page-object環境では、一般的なヘッダーリンクとフッターリンクの存在と機能を確認する必要があります。これらはすべて同じで機能するはずですが、関連するすべてのページに含めたいと思います。
私はDRYコーディングを続けようとしており、Webアプリケーションで共有されているヘッダー/フッター要素を識別するために必要な回数を最小限に抑えたいと考えています。
support/フォルダーに何か'common_links.rb'を含めることで、これを実行できると思いました。
上記をに含めようとしていますsupport/pages/activities_page.rb
。これを呼び出すキュウリ機能を読み込もうとすると、次のエラーが発生します。
'CommonPage'クラスを作成し、それを継承しようとしましたが、ユニタライズされた定数エラーが発生します。CommonPageクラスはモジュールと同じです。
これらのアプローチのいずれかを使用しようとしても、成功しませんでした。
あるファイル/モジュール/クラスで共通リンク(ヘッダー/フッターなど)を宣言し、別のクラスからそれらを使用することに成功した人はいますか?
どんな方向でもいただければ幸いです。