問題タブ [graphene2]
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.
java - Graphene に @Page を読み込むように指示するにはどうすればよいですか?
TL;DR: @Page-injected オブジェクトに対してロードする (相対) URL をグラフェンに伝えるにはどうすればよいですか?
「最先端」、つまりArquillian、Arquillian Drone、Selenium 2、Graphene 2の組み合わせを使用して、Webフロントエンド統合テストをセットアップしようとしています.
Arquillian、Drone、およびプレーンな Selenium WebDriver (つまり、Graphene 固有のものなし) を使用すると、テストは次のようになります。
(ShrinkWrap のドキュメントが最新ではないため、展開を正しく行うのに時間がかかりました。)
この簡単なテストは、ホームページからログイン ページにリダイレクトされるかどうか、およびそのタイトルが正しいかどうかを確認するだけです。できます。
Graphene 2 は、重要な新機能「自動配線」ページの抽象化を追加します。次に、私のテストは次のようになります (上記のインポートと展開部分を省略します)。
この「ページ抽象化」オブジェクトの使用:
これは実際に機能し、私のテストは失敗せず、正しいタイトルも出力します。
しかし、これはまったく機能しません (なぜ機能すると思われるのかはわかりません。以前のテストの出力を見たに違いありません) ...
「org.openqa.selenium.NoSuchElementException: Unable to locate element with name: title」という非常に長いスタック トレースが表示されます (Arquillian、Graphene、Java Reflection API、Maven Surefire プラグイン、および 2 行のコードのすべて)。 )。
メソッドをデバッグすると、最終的に Html-Element へのアクセスが試行され、手元にあるabout:blank
HtmlPage はログイン ページではなくページであることがわかります。
これはどのように機能するはずですか?そして、なぜそれは私にとってうまくいかないのですか?
次に、ログイン ページ以外のページをテストしたいので、別の開始 URL を使用する必要があります。
プレーンな Drone+ Selenium Webdriver では、単純に使用します
テストの最初の行として。しかし、Graphene 2 の @Page-Annotation をどうするのでしょうか?
@Page-injected オブジェクトをロードする URL (deploymentUrl に関連する) をグラフェンに伝えるにはどうすればよいですか?
selenium - Arquillian コンテナーの管理とデプロイを使用せずに、Arquillian Graphene を使用することは可能ですか?
私は Selenium 駆動の UI テストの非常に大きなセットを持っていますが、これは維持するのが非常に面倒です。Arquillian Graphene とそのメリットについて読んだことがあります。
その下にある Arquillian フレームワークを使用せずに Arquillian Graphene (2) を使用すること、つまり、実行中のアプリケーションに対して Selenium テストを実行することは可能でしょうか。このセットアップを機能させるための経験はありますか? 乾杯、クリス
input - JSF UI コンポーネントが Graphene WebDriver テスト ブラウザー インスタンスに表示されないのはなぜですか?
Arquillian Drone Graphene WebDriver のテスト ブラウザー インスタンスで JSF 2.2 UI 入力コンポーネントがレンダリングされないのはなぜでしょうか。私のテストページは次のとおりです。
私の Arquillian Drone テスト クラスは次のとおりです。
そして、これらすべての結果 (maven テストの実行時) は、次の WebDriver テストブラウザーになります。
このテスト ブラウザで JSF がレンダリングされないのはなぜですか?
jakarta-ee - Arquillian Graphene/Drone テストで間違ったポートを使用して WebLogic 管理対象サーバーにアクセス
プロジェクトの 1 つで統合テストを実行するために Arquillian を使用していますが、アプリケーションが WebLogic 12c R2 コンテナーにデプロイされると、ブラウザー テストを実行するために Arquillian Graphene/Drone によって間違ったポート番号が使用されていることがわかりました。テストによってブラウザが起動されると、WebLogic 管理対象サーバーに割り当てられたポートではなく、WebLogic 管理サーバーに割り当てられたポートが使用されます。これは、コンテナが HTTP 404 エラーを返し、テスト ケースが失敗することを意味します。
さまざまな Arquillian コンポーネントのコードを調べましたが、問題の根本原因を突き止めたと思います。この問題は、WebLogic 管理対象サーバーにアーカイブをデプロイし、Arquillianに戻すメソッドを含む「wls-common」モジュールのRESTUtilsクラスにあるようです。その後、Web ページにアクセスするために Arquillian Graphene/Drone によって使用されます。deploy(CommonWebLogicConfiguration config, Logger logger, Archive<?> archive)
ProtocolMetaData
ProtocolMetaData
このメソッド内には、オブジェクトHTTPContext httpContext = new HTTPContext(adminUrl.getHost(), adminUrl.getPort());
の構築に使用される次のコード行が
あります。ProtocolMetaData
これは、管理対象サーバーに割り当てられたポートではなく、管理ポートが使用されていることを意味します。
根本原因を正しく特定したと仮定すると、この Arquillian コンテナ アダプタを WebLogic 12c R2 で使用できるとは思えません。このアダプタを間違って使用しようとしているのではないかと思います。
POM ファイル内の WebLogic コンテナ アダプタの Maven 依存関係は次のとおりです。
私の arquillian.xml ファイルのエントリは次のとおりです。
私が使用しているWebLogicのバージョンは12.2.1です
私の質問は、このコンテナ アダプタを使用して WebLogic 12c R2 コンテナにデプロイしようとしているときに何か不足しているのでしょうか? 他の誰かがこのアダプターを正常に使用していますか?
WebLogic コンテナーは別のホストで実行されているため、リモート アダプターではなく REST アダプターを使用する必要があると思います。リモート アダプターでは、WebLogic コンテナーと同じホストで Arquillian テストを実行する必要があるようです。
testng - Blackbox Selenium テスト用の Arquillian
セレンブラックボックスのテストに Arquillian / Graphene を使用しようとしています。testng と一緒に arquillian を使用したいと思います。
jboss/tomcat は使用していません。testng で行っているように、テストをスタンドアロン テストとして実行したいと考えています。
私のテストはとても簡単です。
しかし、私はこの例外を受け取ります。私はこれについて手がかりがありません。助けてください。