以前は、シナリオ名でシナリオとは何かを説明するシナリオを作成していました。例えば:
シナリオ: コンテキストの切り替え中にコンテキストが一致せず、削除するファクトのリストがユーザーに表示され、ユーザーがリストでファクトを選択した場合、ファクトを削除する必要があります。
しかし問題は、シナリオがますます複雑になり、シナリオ名がどんどん長くなることです。長い名前を書き続ける必要がありますか、それとも何か良い提案はありますか?
質問で概説されているシナリオは、システムと高度に結びついているように思えます。あなたが指定している動作は何ですか?
ただし、あなたが持っているものを転がすには、これは単なる言語の問題だと思います.
個人的には、次のような名前に変更すると思います。
Scenario: Should be able to delete non-matching facts
より一般的ですが、誰かがシナリオを読んだときに何が起こっているかがわかります (機能のコンテキストとその他の関連するシナリオが与えられます)。
結局のところ、シナリオ名の長さは問題ではありません。開発に関係する人 (開発者、テスター、ビジネス関係者の 3 人のアミーゴを考えてみてください) であれば問題ありません。誰もがそれが何を意味するかを知っています。しかし、明らかに、他の人にとって理解しやすいほど、より良いものになります。
まあ、あなたは自分自身を繰り返しているように聞こえます。
以下のテストは、おそらくあなたの意図と一致しません。しかし、そうするふりをしてください。
シナリオが次のようになっている場合:
Given the current context is Green
And the following list of facts for delete are selected
| Fact | Checkboxstate |
| A | checked |
| B | |
| C | checked |
| D | |
When I perform a context switch to Orange
Then the following facts should be deleted
| Fact |
| A |
| C |
And the following facts should not be deleted
| Fact |
| B |
| D |
次に、テストは、提案したシナリオのタイトルよりもほとんど複雑ではありません。(テストがこれよりもはるかに複雑な場合は、別の問題になる可能性があります)
代わりに、機能とシナリオのタイトルを簡潔で意味のあるものにするようにしてください。
Feature: Context Switching
Scenario: New Context should be enabled
Scenario: Selected facts should be deleted
etc.