Я использую Cucumber как BDD-фреймворк с rspec / mocha mocking.В идеале мы не будем насмехаться над поведением огурцов;однако сценарий здесь исключительный.Чтобы дать вам краткое представление о проблеме здесь;У меня есть две функции: функция продукта и функция корзины.
Функция корзины в настоящее время высмеивает некоторые продукты, приобретенные из системы трех сторон.А в огуречном прогоне функция корзины запускается до функции продукта.Функция продукта использует реальный вызов для некоторых сценариев.В идеале мы ожидаем, что заглушки уровня класса, такие как Product.stub (: find), будут очищены после завершения сценариев;Однако это не так.Заглушки уровня класса остаются на следующем сценарии огурца и мешают вызову.
Я взаимозаменяемо использовал mocha и rspec, чтобы вызвать заглушки;но безрезультатно;в любом случае заглушка остается и препятствует запуску функции моего продукта после функции корзины.Оба они прекрасно работают в изоляции.
Кто-нибудь сталкивался с подобной проблемой с заглушками, не сбрасываемыми в огурец?Есть ли способ, которым я могу восстановить исходное поведение класса?
Любая помощь будет оценена.
Приветствия