Общее решение состоит в том, чтобы использовать какой-либо метод для фактического переключения нашего набора маршрутов, а именно: использовать насмешку или просто создать область действия, которая использует маршруты, для возврата нового ActionDispatch :: Routing :: RouteSet.new - это предотвращает вас от использования маршрутов по умолчанию, но в сценарии, где вы тестируете что-то, что вращается вокруг маршрутов, это работает отлично.
Если, альтернативно, вы тестируете код, например Помощники, которые используют маршрут, вам нужно будет либо сохранить состояние маршрутов, либо что-то подобное, чтобы предотвратить их очистку. Если вы сомневаетесь, я предлагаю взглянуть на код ActionDispatch и тесты (например, http://github.com/rails/rails/blob/master/actionpack/test/dispatch/url_generation_test.rb)