きゅうりで正常に動作する機能(.featureファイル)があります。
この機能のすべてのシナリオの背景は、ユーザーを設定してから、スーパーバイザーとしてログインするだけです。
Background:
Given I am logged in as a supervisor with an existing supervisee
...loads of scenarios
ただし、アプリケーションの設計/目標が変更されており、スーパーバイザーとしてログインしている場合でもユーザーとしてログインしている場合でも、同じシナリオがすべて機能するはずです。これは、設計がスーパーバイザー/ユーザーに対して対称的でない残りのアプリケーションのほとんどには当てはまりません。
フィーチャーファイル全体を異なる背景でコピーして貼り付けることを回避するための正しい方法はありますか?バックグラウンドをパラメーター化する方法(たとえば、Either:Or:スタンザを使用)や、シナリオの負荷を伴う外部ファイルをプルする方法はないようです。アイデア?
Background:
Given I am logged in as an existing supervisee
...same loads of scenarios
これがいくつかのファンタジーガーキン構文です(それは存在しません)
Background Outline:
Given I am logged in as a <user>
Backgrounds:
| user |
| supervisor with an existing supervisee |
| an existing supervisee |
...loads of scenarios
あるいは、別のファンタジーガーキン構文:
Background:
Given I am logged in as an existing supervisee
Include Scenarios:
supervisor.features