私のセットアップは次のとおりです。
- MVVMパターンを使用したWPFクライアント書き込み
- 単体テストのセット
- SpecFlow シナリオのセット
SpecFlow シナリオを作成するとき、私は最初にステート マシン図を描いて、ユーザー インタラクションのすべての可能な順列と、ある状態から別の状態に移行するための要件を確認します。次に、考えられるすべてのシナリオのリストを作成します。
例えば:
- ユーザーが [はい] を押す -> ドキュメントをアップロードする -> ドキュメントを削除する -> [送信] をクリックする
- ユーザーは [はい] を押します -> ドキュメントをアップロードします -> 送信をクリックします
- ユーザーが [はい] を押す -> [送信] をクリック
これにより、考えられるすべてのシナリオをテストし、見逃さないようにすることができます。ただし、これは面倒なプロセスであり、要件が変更されると非常に問題になります。
ステート マシンからシナリオを作成できるフレームワークがあるのではないかと思います。そのため、ステート マシンからステップを削除すると、自動的にシナリオが再作成されます。