Я читал блестящую статью Боба Мартина о том, как «Дано-когда-то» можно сравнить с конечным автоматом. Это заставило меня задуматься. Можно ли для теста BDD иметь несколько «Когда»?
Например.
GIVEN my system is in a defined state
WHEN an event A occurs
AND an event B occurs
AND an event C occurs
THEN my system should behave in this manner
Я лично считаю, что это должны быть 3 разных теста для хорошего разделения намерений. Но кроме этого, есть ли веские причины за или против такого подхода?