問題タブ [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 - カピバラ要素からセレン要素を抽出するにはどうすればよいですか?
私は Ruby や Capybara や SitePrism よりも Java や Selenium に精通しているので、この質問がややこしくて申し訳ありません。
Selenium には、Select タグを管理するための非常に便利なクラスSelenium::WebDriver::Support::Selectがあり、select を表すSelenium Element ( Selenium::WebDriver::Element )を渡すことで作成できます。便利なメソッドを使用できるように、Select オブジェクトを取得したいと考えています。
ただし、SitePrism と Capybara を使用すると、要素を定義する標準的な方法で、Capybara の Element クラスであるCapybara::Node::Elementによってモデル化された select にアクセスできますが、基になる Selenium Element を抽出する簡単な方法を見つけることができないようです。カピバラエレメントより。
私は代替案を探し回り、Capybara の#selectメソッドを見つけましたが、値による選択を強制し、ページで選択を定義するためのパラメーターが非常に狭いように見えるため、それは私には非常に制限されているようです。
SitePrism/Capybara から Selenium Select を作成する簡単な方法はありますか? または、これを完全に行うためのより良い方法はありますか? ありがとう!
ruby-on-rails - ブラウザで実行するためにRailsテストをどのように正しく設定しますか? ( site_prism、cucumber、capybara、selenium webdriver )
Rails アプリのテストを書いています。site_prism、カピバラ、セレン、キュウリを使用しています。ブラウザー (firefox) でテストを実行するように Selenium ドライバーをセットアップするにはどうすればよいですか?
たとえば、これは機能の 1 つです。
これは私の features/support/env.rb 設定ファイルです:
カピバラを使用すると、次のようにブラウザでシナリオを実行できます。
しかし!site_prism を使用して、Page#load メソッドを使用するだけです。load メソッドと capybara セッションを統合する必要があるかもしれませんが、どうすればよいでしょうか?
ほとんどの場合、ドキュメント (github の cypabara wiki) に記載されているとおりにすべてを実行しますが、私のテストはブラウザーなしで実行されます。そして、私はその理由を理解できません。
助けてください。ありがとう。
selenium-webdriver - 技術的にセクションの範囲外にある要素とサブセクションをどのように処理すればよいですか?
セクションとサブセクションを含むページをモデル化しようとしていますが、スコーピングで問題が発生しています。
私が定義しているセクションは、階層内の DOM で次のように見つけることができます。
html > body > div.page-background > div#wrapper > div#content > div#primary > ... > div#reserve-search
そのため、CSS セレクターdiv#reserve-searchを使用してページのセクションを定義しました。ただし、このセクションのボタンをクリックすると、操作が必要なポップアップ パネルが表示されます。ポップアップは論理的にはセクションの一部ですが、DOM の別の場所にあります。
html > 本文 > div#オーバーレイアドレス
これは私を束縛します。現在のコードは次のようになります。
上記の問題は、 を呼び出そうとするとinteractWithAddressSection
、のスコープOverlayAddressSection
によって定義されているReserveSearchSection
ため、実際にはdiv#reserve-search div#overlay-address の下の DOM のサブセクションを探すことです。サブセクションがそこにないため、呼び出しがタイムアウトし、サブセクションが見つかりません。
このサブセクションをより大きなセクション内に定義したいと思います。これは、間違いなく論理的に属し、アクセスする必要がある場所です。親セクションのスコープを使用せずにサブセクションのロケーターを定義する方法はありますか?
明らかに、サブセクションが DOM の親セクション内に存在する方が便利で「適切」ですが、技術的にはページの非常に異なる部分に存在する、このように定義された多くのポップアップとパネルを見てきました。構造は、DOM の別の部分のサブセクションとしてモデル化する必要がありますが。おそらくある種の絶対セレクターでサブセクションを定義することによって、親セクションのスコープから抜け出す方法があるはずです。そのような方法は存在しますか?そうでない場合、他の回避策はありますか?
capybara - SitePrism の element.visible を使用できないようですか? 要素が存在しない場合
私は次のコードを持っています:
問題は、header_upgrade_subscription が存在しない場合、次のように失敗することです。
カピバラでは、次のことができることを知っています。
存在しない場合は nil を返します。SitePrism 要素に対して「最初の」メソッドを使用するにはどうすればよいですか? これは私が得るものです:
要素が存在しない場合は待機時間がないため、「最初の」メソッドを使用するのが好きです。
ご協力いただきありがとうございます!
ruby - Cucumber/Capybaraを使ってSiteprism PageオブジェクトモデルのセクションのCSSスタイルを取得する方法
Cucumber/Capybara を使用して、Siteprism ページ オブジェクト モデルのセクションの CSS スタイルを取得する方法。要素の場合、以下のコードを使用して CSS を取得します
@app.page_name.element_name.css('height')
セクションについては、上記と同じように使用しようとすると
次のようにエラーが発生しています
#section_name_Section:0x3635b08> の未定義のメソッド `css' (NoMethodError)
同じセクションにもう1つの要素を作成して使用する代わりに、セクションのcssを直接取得する方法はありますか?
また
ステップ定義でセクションを要素に変換する方法はありますか?
cucumber - Cucumber のシナリオ概要で最初のシナリオが毎回失敗する
出力ファイルとして HTML レポートを使用してフィーチャー ファイルを実行すると、シナリオ アウトラインの最初のシナリオが毎回失敗します。しかし、Feature ファイルの最初のシナリオと同じ Scenario Outline を作成すると、それは渡されますが、これにより、Feature ファイルでテスト ケース フローが奇妙になります。
なぜこれが起こっているのか、どのように克服するのか考えていますか?
私のキュウリのバージョンは「1.3.15」です
rubymine - Rubymine で完全な Siteprism の要素をコーディングする
Selenium、Capybara、siteprism を使用して自動化しています。rubymine を使用して、@page と入力できるようにコード補完を取得したいと考えています。メソッドのリスト (これは機能します) と、siteprism を使用してページ オブジェクトで定義された要素とセクションのリストを取得します。
Rubymineでこれを行う方法はありますか? 崇高なテキスト エディターはこれを行いますが、クラス名とメソッドをうまく処理できません。
ruby - SitePrism ページ内からページ ドライバーを取得する
SitePrism ページ内からページ ドライバーを取得するにはどうすればよいですか?
ポルターガイストのドキュメントによると、必要なのは次のように呼び出すことだけです。
ただし、SitePrism のページではなく、Capybara のページを参照しています。したがって、質問: SitePrism を使用しているときに Capybara ページを取得する方法は? SitePrism でpage
/メソッドなどを見つけることができませんでした。driver
前もって感謝します。