Тесты на огурец Аруба (ruby1.9.2) - PullRequest
1 голос
/ 15 декабря 2010

Я только что установил камень aruba , который является расширением для огурца. Он позволяет вам тестировать приложения командной строки - например, генераторы в Rails (но, как указывается в документации, вы можете использовать его для любого приложения cmd).

Я следил за этой основной лабораторной статьей об ее использовании, но по какой-то причине он не прошел первый шаг: первый шаг - зеленый (создание приложения), но следующий шаг пытается cd test_app и не может найти его и не удается.

Given I run "rails new test_app"                       # features/step_definitions/aruba_steps.rb:95
And I cd to "test_app"                                 # features/step_definitions/aruba_steps.rb:91
  tmp/aruba/test_app is not a directory. (RuntimeError)
  ./features/step_definitions/aruba_steps.rb:92:in `/^I cd to "([^"]*)"$/'
  features/generators.feature:9:in `And I cd to "test_app"'

Может показаться, что папка приложения на самом деле не создается, хотя, глядя в базовый каталог, я вижу, что tmp / aruba / fold равен . Пройдя немного по источнику, я не могу придумать, почему. Кто-нибудь еще имел опыт работы с этим камнем и нашел то же самое?

Есть ли хорошие альтернативы BDD для тестирования генераторов или рейка и т.д.?

Далее Райансу ответят:

Как только я добавил следующее в features/support/env.rb (работает из каталога base rails):

Before do
  @dirs = [File.expand_path(File.dirname(__FILE__) + '/../../../aruba_test_dir')]
end

Так что огурец строит приложение вне текущего приложения rails, это решает проблему.

1 Ответ

2 голосов
/ 15 декабря 2010

Мои первоначальные мысли: я думаю, что могло бы вызвать это, если бы Rails не было внутри вашего пакета.Но ты выглядишь как умный человек, и поэтому я попытался повторить твой пример и обнаружил, что я получил то же самое.

Озадаченный, я убедился, что получаю вывод:получается просто , наблюдая , что вывод содержит app / mailers , что этот процесс работает.Это очень количественно и, скорее всего, ошибка в Aruba или Rails.Я не уверен, какой.

...