5

SpecFlow の使用を開始しましたが、仕様間でシナリオを再利用できるのではないかと考えています。

基本的に私の考えはこれです(私は根本的に間違っているかもしれません:))

ナビゲーションを検証するために作成された機能が 1 つあります。

機能: ナビゲーション

I should be able to navigate to all the pages i'm authorized to

シナリオ: Boo に移動する

Given I enter proper values in Foo
When I enter Go
Then I should be taken to Boo**

そして、ブーの操作面を検証する別の仕様があります

機能: Boo が正常に動作しているかどうかを検証する

ここでは基本的に、最初に Boo 画面に移動する必要があります。Navigationで書いたScenario: Navigate to Booのシナリオを再利用できないかと考えていました

これは可能ですか?そうでなければ、それを回避する最善の方法は何ですか?

/BB

4

1 に答える 1

5

ここには 2 つのオプションがあります。

  1. 多くのシナリオに共通する共有ステップを持つクラスを作成します。あなたの場合、このクラスには「ブーに移動するとき」というステップが含まれます。これは、他の機能で利用できるようになります。

  2. まったく同じ名前/テキストで複数のステップが必要になる場合がありますが、ScopedStepBindingを使用して、そのステップの正しいバージョンが機能に対して呼び出されるようにすることができます。そのため、複数の機能ファイルに「Boo に移動したとき」が表示される可能性がありますが、ステップ スコープを使用することで、機能ファイルに対して実行されるコードを制御できます。

于 2011-07-11T08:38:36.737 に答える