我们实际上在应用程序中不使用测试(我知道这很糟糕)。我读了很多关于测试的书::单元,寿达,迷你和新的培根。但我还不能下定决心。基本上我们的需求是:
- 水的使用(喜欢)
- 易于学习
- 不要干扰应用程序(比如Rspec生成器,而不是针对Rspec)
- 与轨道集成3
- 没有客户端需要读取它,只有dev
你觉得怎么样?
我实际上放弃了Test::Unit
,转而使用RSpec 2
。只有开发人员必须阅读我们的测试,但RSpec似乎鼓励比Test::Unit
更好的结构化测试。不过,它与大多数其他测试框架不同,所以有一个小的学习曲线,但仅限于最初几天。
我还强烈建议你不要使用Rails的固定装置,你可以看看Machinist。
我会选择minitest作为Ruby 1.9.2中的默认设置(取代test/unit),并使用test/unit格式,因为这是许多开发人员熟悉的
您的最后一个要点让我推荐Test::Unit。如果您不需要测试是客户端可读的,那么Test::Unit会简单得多,并且在开始之前不需要太多的测试框架知识。它看起来像是与Watir集成在一起(尽管我还没有用过它)。
我相信你会对你列出的每一个框架都有很多建议,我想说只要选一个就可以开始写测试了!
我在这里推荐Test::Unit
/Minitest
以及其他产品。您也可以安装Shoulda
,或者使用类似的东西为Test::Unit
提供类似的语法:
class TestStuff < Test::Unit::TestCase
def setup
@foo = Klass.new
end
should "be of class Klass" do
assert_equal Klass, @foo.class
end
end
你有没有想过用Capybara代替Watir?