問題タブ [scenarios]

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.

0 投票する
2 に答える
331 参照

bdd - シナリオに BDD の When がない場合がありますか?

私は現在、SpecFlow を使用して BDD を学習/テストしていますが、うまく機能しています。

質問をすることを選択する前に、 を読みました。言及されていないシナリオthis oneのために、同じ問題が解決されているという事実にもかかわらず、質問をしなければならないと感じました。Exception

私は実際にこのシナリオをテストしています:

Whenビジネス要件に情報が不足しないように、メソッドにコメントを残すことは正しいと思います。また、コード ビハインドについては、コメントすることで正確に意図を明確にします。

どう思いますか?私がそれを作るべきではない他のアイデアはありますか?

0 投票する
1 に答える
271 参照

tdd - Gherkin Given および When ステートメントを定義する際のコードの重複の回避

私も同様の質問をしましたが、言葉遣いが悪く、求めていた回答が得られませんでした。別の試みを次に示します。

したがって、Cucumber の Gherkin Given ステートメントがテスト ケースの前提条件に類似していることに感謝します。これらはユーザーの操作を伴うべきではないと考える人がいることに感謝しますが、この質問のために、私はその見解に同意しません.

以下に 3 つのシナリオを示します。

したがって、ビジネス ユーザーの観点からは、上記のバージョン B がバージョン A よりも優れていることを理解しています。ただし、コードの再利用の観点から見ると、バージョン B では、最初のシナリオの大部分で使用されたコードを繰り返すために、Given ステートメントが必要になることは間違いありません。 ?

乾杯、

チャーリー

0 投票する
4 に答える
8868 参照

testing - SpecFlow - 失敗したテストを再試行する

AfterScenario失敗した場合に現在のテストを再実行するフックを実装する方法はありますか?

このようなもの:

: 私のプロジェクトのテストは順序付けられたテストに結合され、MsTestを介して実行されます。

0 投票する
4 に答える
571 参照

selenium-webdriver - 長いシナリオで Selenium を使用するにはどうすればよいですか?

私は、患者の登録から請求までのライフサイクルの機能のページを含む長期シナリオを記録するように依頼されました。Selenium IDE を試しましたが不安定で、記録したばかりの再生エラーが発生します。Selenium 2 を試すと、DOM と XPATH の問題が発生します。Selenium 2 は単体テスト用だと思います。5 分間のシナリオの記録と再生に対応するオープン ソースの代替手段は何ですか? これは主観的な質問であり、以前にも尋ねられた可能性があることは承知していますが、オプションが改善された可能性があります。

0 投票する
1 に答える
838 参照

csv - さまざまな機能/シナリオでのキュウリの例の再利用

私はしばらくキュウリを使用してきましたが、問題に遭遇しました:

実際の質問:

具体的に例としてキュウリを使用して、単一のファイル/データベースから例をインポートするソリューションはありますか? あるいは、例としてすでにインステップで変数を定義する方法はありますか? または、代わりに、機能ファイル/シナリオを起動するときにサンプルを変数として送信するオプションはありますか?

問題:

まったく同じ例を何度も使用したいシナリオがいくつかあります。

かなり簡単に聞こえますが、例のテーブルは非常に大きいです (具体的には、世界のすべての国とそれぞれの大陸が含まれています)。したがって、特にテーブルを変更する必要がある場合は、それを繰り返すのは非常に面倒です (テーブルのすべてのインスタンスを個別に変更する必要があります)。

合併症:

特定の例がいつ失敗したかを認識し、テストの完了後に再実行する再実行機能があります。

制限:

再実行ファイルを編集したくない

関連している:

ここで csv からのインポートに関するオープンな議論が既にあることに気付きました: Importing CSV as test data in Cucumber?

ただし、例でのみ機能することを知っている再実行関数があり、解決策がそれを台無しにすることを示唆しているため、その議論は私には無効です。

ありがとうございました!

0 投票する
1 に答える
471 参照

database - データベース シナリオ ベースのアプリケーションはどのように開発されますか?

データベースを使用するアプリケーションを構築しています。たとえば、マーケティング/セールス ソフトウェアです。このアプリケーションでは、ユーザーがシナリオを作成できます。あるユーザーは会社の売上を向上させるために別の道を選択し、別のユーザーは別の道を選択する可能性があります。各ユーザーのシナリオはデータベースに保存され、いつでもデータベースからシナリオを読み込んで作業を続けることができます。問題は、アプリケーションがデータベースをどのように変更するかです。たとえば、「売上」というテーブルがあります。ユーザー 1 にはシナリオがあり、"sales" テーブルに異なる値があり、ユーザー 2 にはまったく異なる値がある場合があります。アプリケーションは、シナリオごとに販売テーブルの異なるコピーを作成しますか? sales_scenario_1sales_sceneario_2?_ この種のアプリケーションはどのように構築されていますか?