Я обнаружил, что проблема с тегом @wip заключается в том, что он не делает ваш набор тестов желтым. Он полностью игнорирует функции стирания, и вы склонны забывать, что они существуют. Это поразило мою команду в тылу, когда сценарии помечены как @wip, а затем забыты. Я бы хотел, чтобы было лучшее решение. Лучшее, что у меня есть, это добавление этого пользовательского шага:
Given /^PENDING/ do
pending
end
Вместо того, чтобы пометить реальную функцию как ожидающую, я могу поместить это в очередь с сообщением, например так:
Given PENDING: we need client input
Тогда это выглядит так:
(::) pending steps (::)
features/example.feature:15:in `Given PENDING: we need client input'
Ожидание останавливает цепочку тестов, но не мешает огурцу ворчать о каких-то неопределенных шагах, которые следуют в том же сценарии. Кроме того, в идеале отказавшие и ожидающие функции сообщали бы вам имя сценария, который провалился, но это не так.