Из-за огурца действительно сложно делать такие вещи, как зацикливание и условные выражения в функциях. Это по замыслу. Функции предназначены не для документирования и изучения того, КАК что сделано, а для документирования, ПОЧЕМУ все сделано и ЧТО они.
Теперь у вас есть какая-то сложная операция, и вы хотите проверить, работает ли эта операция. В этом сценарии необходимо документировать, ЧТО эта операция и ПОЧЕМУ она важна.
Итак, как называется операция, которая ставит пакет через таблицу расчетов и AssetLoanAgreement. Почему важно делать все это вместе. Почему они связаны. Важен ли порядок et c. et c.
Есть много вопросов, на которые вам нужно задать вопросы и найти ответы. Когда вы сделаете это, вы сможете написать гораздо более простой сценарий.
В общем, если вы хотите сделать что-то сложное в сценарии, соедините разные сценарии ios вместе, l oop, запустите условное поведение, или делайте все, что можно считать программированием, и вы хотите сделать это в функциях, которые вы должны ОСТАНОВИТЬ и начать задавать вопросы.
Каждый раз, когда вы начинаете изучать новый фрагмент поведения, вы должны иметь возможность написать простой (сценарий счастливого пути), такой как
Given I am ready to foo
When I foo
Then I should see I have foo'd
Если вы не можете написать этот начальный сценарий, то Cucumber говорит вам, что вам нужно задавать вопросы и понимать, ЧТО вы делаете с большей ясностью.