問題タブ [thucydides]
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 - Jbehave ベースの serenity-bdd フレームワークで androiddriver または iosdriver を使用できませんか?
jbehave ベースの serenity-bdd プロジェクトで Android ドライバーを正しく動作させるのに問題があります
serenity-jbehave archtype を使用してプロジェクトを作成し、生成された AcceptanceTestSuite クラスで、関連するすべての必要な機能を備えた AndroidDriver を作成します。(ドライバー構成を Junit テストで使用すると、正しく動作するため、ドライバーの構成に問題はないと確信しています)。
私の問題は、ストーリーの実行が開始されると、プロジェクトがこのドライバーを完全に忘れて、代わりにデフォルトとして設定されているドライバーを使用するように見えることです。
私は何が欠けていますか?serenity.properties ファイルでこの構成を行う必要がありますか? (webdriver.driver構成オプションとしてandroidを追加しても機能しないことがわかりました)。
返信ありがとうございます。
java - Serenity-BDD フレームワークの PageObject クラスで MobileElement を使用するにはどうすればよいですか?
Serenity BDD JBehave フレームワークによって管理される PageObject クラスで MobileElement クラスを使用した人はいますか?
Appium ドライバーで使用したい PageObject クラスは次のとおりです。
そして、ここに私が取り組んでいるものがありますが、これは少し面倒です
これが私がこれまでに試したことです:
フレームワークが内部で WebDriverFacade クラスを使用しているため、明示的に AppiumDriver をコンストラクターに渡して PageObject をインスタンス化することはできません。
見つかった WebElement オブジェクトを明示的に MobileElement オブジェクトにキャストすることはできません (WebElement が WebElementFacade によって実装されるときにスローされるクラス キャスト例外)。
誰でも助けることができますか?
ありがとう
selenium - 基礎となる REST API を実行する必要がある場合に、Selenium テストを並行して実行する競合を回避するにはどうすればよいですか?
複数の環境の複数のブラウザーでテストする必要がある Web アプリケーションがあります (つまり、Chrome、Firefox、および Windows と Linux* の両方の Internet Explorer* (* Internet Explorer は明らかな例外))。
テストは JBehave、Selenium、および SerenityBDD (Thucydides) を使用して Java で記述されています。これらのテストは、基礎となる REST API を実行し、UI を使用してオブジェクトを正常に作成および削除できるかどうかをテストします。
私は Selenium Grid を使用しており、並列ノードでテストを実行したいと考えています。ただし、懸念されるのは、テストが基盤となる REST API を実行するため、競合が発生する可能性があることです。
テストを実行する Jenkins ジョブ構成内のパラメーターとしてパラメーターをテストに渡すことは可能ですか? テストが実行されているノードに依存するテストにわずかな違いがありますか? (たとえば、Chrome では「MYOBJECT-CHROME」という名前のオブジェクトが作成されますが、Firefox では「MYOBJECT-FIREFOX」という名前のオブジェクトが作成されます。これは、REST API の競合を回避できることを意味しますか?)
report - セレニティ レポートから無視/スキップされたシナリオを削除する
ストーリー ファイルに複数のシナリオがあり、実行したくないシナリオを除外するメタ タグを使用してシナリオを実行しています。しかし、Serenity レポートでは、それらが無視されたと表示され、無視されたシナリオが実行されたシナリオよりもはるかに多いため、見た目が悪くなります。これらの無視されたシナリオをセレニティ生成レポートから削除する方法はありますか?
logging - serenity-bdd のログ設定を変更するにはどうすればよいですか
私のプロジェクトでは、IntelliJ IDEA as IDE のテスト自動化にSerenity BDDを使用しています。テストを実行するたびに表示されるログの形式とデバッグ レベルを変更したいと考えています。
たとえば、[メイン] スレッドからのみログを表示したい:
ログバックの方法は知っていますが、セレニティのログ設定を変更する方法と場所に関する情報が見つかりません。
multithreading - Jbehave - 選択したストーリーの thucydides マルチスレッド実行
私の組織は、Jbehave-Thucydides-Maven を使用して設計されたセレン自動化フレームワークを使用しています。フレームワークは 1500 以上のテストで構成されていますが、すべてを毎回実行する必要はありません。小さなバッチ (たとえば 10 個のスクリプトなど) を実行するたびに、1500 以上のスクリプトすべてがシステムに読み込まれ、「メタ」タグ (実行時に渡される) でフィルタリングが行われ、選択された 10 個のスクリプトが実行されます。これにより、全体的な実行時間が長くなり、実際のスクリプトの実行には 10 分しかかからないのに対し、スクリプトのロードとフィルタリングには 15 分以上かかり、合計実行時間が長くなります。以下は、マルチスレッド実行をトリガーするために使用される maven pom のスナップショットです。1500 以上のスクリプト全体ではなく、必要な 10 個のスクリプトのみがシステムに読み込まれるようにするには、どのような変更が必要か教えてください。ここに画像の説明を入力
java - JBehave テストの実行中に @skips を Serenity レポートから除外するにはどうすればよいですか?
したがって、次のようなテストがあります。
@skip
まだ作業中か、適切に動作しないことがわかっているときはいつでもそこに置きます。
Serenity レポートを取得したいのですが、スキップされた記事を含めたくありません。それらを報告から除外するにはどうすればよいですか?