使用可能なワークフロー (インスタンスではなく、ワークフロー定義を意味します) のリストを表示するワークフロー エンジンがあり、ユーザーはワークフローの横にある [実行] リンクをクリックして、そのワークフローの新しいインスタンスを実行できます。この「ワークフローを実行する」というストーリー(機能?)をBDDのやり方でやりたいと思っています。
Story: execute a workflow
Scenario: execute a workflow by clicking on execute link in workflow list and nothing goes wrong
Given I am a user with sufficient rights
And I have added a workflow called "wf"
When I click on the execute link next to "wf" in the workflows list
When I view the list of workflow executions
Then the output is:
"""
1 | wf1 | not started
"""
(1 列目: 項目番号、2 列目: ワークフロー名、3 列目: 状態)
私は、これは DBB シナリオをうまくカットしたというよりも、ごちゃごちゃしているように感じます。私は特に受け入れ基準に関心があります。「ワークフローの実行」のような大まかなユーザー結合にどのようにアプローチする必要があるかについて、私の心は明確ではありません。つまり、あなたが行っているのが API である場合、すべてが明確ですが、(人間の) ユーザー インタラクションによって開始され、その結果が複雑な出力 (リストなど) を持つ別のユースケースを開始することから明らかな何らかの動作を説明している場合はどうでしょうか。アイテムの)。ワークフローが実際に実行されたことを知る基準は、ワークフロー実行のリストに新しい項目が表示されることですが、これは別の話です。私はここでちょっと混乱しています。
データベース レイヤーと対話して、新しく作成されたワークフロー インスタンスを格納する行を確認する必要がありますか?それとも、ワークフロー実行のリストに新しいインスタンスを指すアイテムが存在するかどうかを確認する必要がありますか? 2番目の場合、正確にはどうですか?1 つのシナリオで正しい値を持つすべての列を確認する必要がありますか、それとも独自のシナリオで各列を確認する必要がありますか?