Рефакторинг огурца прост, если вы делаете свои шаги очень простыми. Как только вы добавляете параметры, все становится намного сложнее, поскольку разные операторы могут соответствовать одному и тому же определению шага.
Что я делаю, это
- глобальный поиск нужной фразы
- взгляд на определение шага, касающееся реализации шага
- примите решение на основании вышеизложенного относительно того, какой тип рефактора мне нужен
Некоторые из необходимых мне рефакторов
- извлечь вспомогательный метод из определения шага
- создать аналогичный шаг, например У меня может быть несколько шагов, которые делают то же самое. Это не проблема, если каждое определение шага вызывает один и тот же вспомогательный метод
- создать другой шаг, потому что я обнаружил две разные вещи, например, допустимый текст и недействительный текст
...
Лично я не думаю, что инструмент рефакторинга подходит для огурца, потому что функции огурца не являются кодом. Все, что меняет шаг без того, чтобы вы сначала не читали этот шаг во всех его контекстах, вероятно, усугубит вашу хитрость.