Автотест, RSpec 2 и Ruby 1.9.2-p0 - вообще не выводится - PullRequest
2 голосов
/ 29 ноября 2010

Я начал книгу Непрерывное тестирование с Ruby (печать B2.0), но столкнулся с непосредственными проблемами. В первой главе я создал пустой Gem, используя Jeweler 1.5.1

$ jeweler --rspec twits

Ручной запуск спецификаций с помощью rake дает правильную ошибочную информацию

$ rake spec
(in /Users/mfurtak/Documents/Programming/Ruby/twits)
/Users/mfurtak/.rvm/rubies/ruby-1.9.2-p0/bin/ruby -S bundle exec rspec "spec/twits_spec.rb"
F

Failures:
  1) Twits fails
     Failure/Error: fail "Trying to get this working"
     Trying to get this working
     # ./spec/twits_spec.rb:5:in `block (2 levels) in '

Finished in 0.00176 seconds
1 example, 1 failure
rake aborted!

Чтобы настроить Autotest для RSpec 2, я создал . / Autotest / Discover.rb в корне моего проекта, как описано в книге, и в другом месте со следующим содержимым :

Autotest.add_discovery { "rspec2" }

Но когда я пытаюсь запустить спецификации RSpec (2.2.0) через автотест (ZenTest 4.4.0), я вообще ничего не получаю.

$ autotest

Все это использует Ruby 1.9.2-p0 - RVM (1.0.2). Если я переключусь на Ruby 1.8.7-p302, все будет работать как положено.

$ autotest
loading autotest/rspec2
bundle exec /Users/mfurtak/.rvm/rubies/ruby-1.8.7-p302/bin/ruby -S /Users/mfurtak/.rvm/gems/ruby-1.8.7-p302/gems/rspec-core-2.2.1/bin/rspec --tty '/Users/mfurtak/Documents/Programming/Ruby/twits/spec/twits_spec.rb'
F

Failures:

  1) Twits fails
     Failure/Error: fail "Trying to get this working"
     Trying to get this working
     # ./spec/twits_spec.rb:5

Finished in 0.00036 seconds
1 example, 1 failure

Ответы [ 2 ]

1 голос
/ 30 ноября 2010

=]

Я создал этот драгоценный камень, альтернативу автотесту, который, я думаю, поможет решить вашу проблему. Называется InfinityTest. (нужен RVM хорошо?)

Для получения дополнительной информации см .:

https://github.com/tomas-stefano/infinity_test

Если у вас возникнут проблемы, дайте мне знать в gitub, что я вам помогу! =)

0 голосов
/ 30 ноября 2010

Отметив курсив автотест на этой вики-странице , я удалил гем ZenTest (4.4.0) и вместо него установил гем автотеста (4.4.5).После этого и

$ bundle install

все работает правильно как в Ruby 1.9.2-p0, так и в Ruby 1.8.7-p302

$ autotest
loading autotest/rspec2
style: Rspec2
bundle exec /Users/mfurtak/.rvm/rubies/ruby-1.9.2-p0/bin/ruby -S /Users/mfurtak/.rvm/gems/ruby-1.9.2-p0/gems/rspec-core-2.2.1/bin/rspec --tty '/Users/mfurtak/Documents/Programming/Ruby/twits/spec/twits_spec.rb'
F

Failures:

  1) Twits fails
     Failure/Error: fail "Trying to get this working"
     Trying to get this working
     # ./spec/twits_spec.rb:5:in `block (2 levels) in '

Finished in 0.00036 seconds
1 example, 1 failure
...