問題タブ [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.
eclipse - Maven を使用して Selenium/Thucydides JUnit テストをアルファベット順に実行する
JUnit を使用してテスト ケースを実行する Selenium/Thucydides プロジェクトがあります。JUnit を使用@FixMethodOrder
して実行している Eclipse では、テストをアルファベット順に実行するために使用できます。これは正常に動作しますが、テストを使用して Mavenmvn verify
でテストを実行すると、ランダムに実行されます。
pom.xml で設定できることが<runOrder>alphabetical</runOrder>
わかりましたが、どちらも機能していないようです。
Maven を使用しているときにテストをアルファベット順に実行する方法はありますか? (お互いに依存するべきではないことはわかっていますが、現時点では依存しているものもあるため、独立させるまでこのオプションが必要です)
POM.xml:
JUnit:
そして@Test
、アルファベット順のメソッドを使用します。
selenium - webdriver を介してテストを実行するときに要素が追加されない
jbehave/selenium/webdriver を使用する bdd フレームワークのストーリーの作成に取り組んでおり、ストーリーの実行中にテストでエラーが発生するが、手動で実行すると問題ないように見えるという問題が発生しています。Firefox で手動でテストを実行している場合と、同じシステム/バージョンの Firefox で Selenium Web ドライバーを使用してテストを実行している場合とで、テストしている機能の JavaScript の動作がわずかに異なり、この違いが js エラーを引き起こしているという問題があります。
私はデバッグしましたが、基本的に問題の根本はvar request_XML_container = $('div_appendpoint_id');
、テストを手動で実行している場合とbddフレームワークを介して実行している場合とで異なるものを返すことです。
手動で実行するvar request_XML_container = $('div_appendpoint_id');
とスタイルが定義されたアイテムを返すのに、webdriver を介して実行すると要素のスタイル属性が定義されないのはなぜですか?
UPDATE :私は当初、これが iframe を更新していると思っていましたが、マークアップを間違って読みました。私が見た iframe は、応答が追加されている要素の親ではなく兄弟です。応答をdivに単純に追加しようとしています。正直なところ、これは id で div を取得するのが非常に簡単であるため、混乱を招くだけであり、この状況で webdriver が別の戻り要素を生成する理由がわかりました。
更新 2 : 再現する手順と、私が使用しているシステムに関する情報:
- webdriver を使用して、次の URL に移動します: http://fiddle.jshell.net/C3VB5/11/show/
- webdriver にボタンをクリックさせます。うまくいかないはずです
- テストを再度実行しますが、一時停止してコードにブレークポイントを置き、ドライバーをクリックします
- webdriver が開いたブラウザの ボタンをクリックします。うまくいかないはずです
- webdriver が開いたブラウザーでブラウザー ページを更新します。これで、動作するはずです。
- システムの詳細:
- OS : OS X 10.8.5 (12F37)
- IDE: Eclipse ケプラー: ビルド ID: 20130614-0229
- ブラウザ (手動および webdriver で使用): Firefox 23.0.1
- セレンのバージョン: 2.35.0
更新 3 : 再現を支援するために、github でこの Maven プロジェクトを提供しました: https://github.com/dkwestbr/WebdriverBug/tree/master/Webdriver
あらすじ/tl:dr; 基本的に、特定の状況では、webdriver が '$()' JavaScript メソッドを、innerHTML またはスタイルが定義された (特に) HTMLElement を返さないメソッドで上書きしているように見えます。この投稿では、問題と再現方法について詳しく説明しています。
問題を追跡するためにこのチケットを開きました: https://code.google.com/p/selenium/issues/detail?id=6287&thanks=6287&ts=1379519170
java - Thucydides+Jbehave の表形式のパラメーター
次のコードがあります。
そして、それにマッピングされた次のメソッド。
私の問題は、テストを実行すると、目的のパラメーターの代わりに関数が ">loginName>" 文字列を使用することです。例ごとにシナリオがあり、それらをマッピングしていることがわかります (例: >loginName> = admin ) .
thucydides - ツキディデスのマーク ステップが失敗し、テストの実行を続行する
私はthucydides + easybを持っています。
@Test アノテーションを使用したメソッドがあります。例:
テストストーリーでは、メソッドは次の順序で実行されます: step1 step2 step3
step2 で AssertionError がスローされました。そしてstep3は飛ばします。
レポートのステップ 2 が失敗としてマークされる必要があります。step3 が実行され、レポートに渡されたものとしてマークされます。
assert を try catch にラップすることはできますが、thucydides コールバックで step2 が失敗したことを示す方法が見つかりません。
誰か助けてくれませんか?
maven - maven で thucydides を実行し、テストをスキップする
テスト目的で、Thucydides と Jbehave を組み合わせて使用しています。
今、私はストーリーlogin.storyを持っています
シナリオ: ログインの成功
ユーザーがログインページにいる場合 ユーザーが
ユーザー名を入力した場合 ユーザー
がパスワードを入力
した場合 ユーザーがログインすると
、ユーザーはホームページに自分の名前を表示する必要があります ログインメタ
を含む別のストーリー story1.story
: @username ユーザー名
@password パスワード
@name name
GivenStories: Login.story
シナリオ: .....
次のコマンド
mvn clean verify thucydides:aggregate -Dmaven.test.failure.ignore=true
を使用して maven でテストを実行すると、
maven はすべてのストーリーを実行します。
login.story は、他のストーリーに含まれてパラメーター化される単なるストーリーであるため、実行したくありません。Maven は現在それを実行しており、例が含まれていないため保留中の話であると述べています。
これを回避する方法はありますか?どのストーリーを実行するか、またその順序を Maven に教えてもらえますか?