我发现大部分的文章都是从 rspec 开写,新建项目就直接跳过测试,直接安装 rspec. 然后支持的工具也多,textmate spork guard 都有很好的支持。
这不,为了加快开始项目的速度,懒得用 rspec 了,直接用了 rails 自带的 unit test, 发现写起来挺带劲啊,对比看英文语法,我更喜欢看 def assert, 还有 textmate 自带的支持也太棒了。
至于 rspec 的 shared example, 我在 test_helper 中直接写几个类宏就搞定了,可以根据自己的需要灵活处理。
还有,factory_gril 到底好哪了,fixtures 就已经满足需求了,而且 yml 中还可以写 erb 语法,我够用了。
注,不是争论帖,新手请教帖,有体会到这两者好处的热心人出来讲讲。谢谢各位了。
用了 rspec+factory_girl 两年了,回来用 testunit+fixtures。发现那就是一个飞速啊,各种爽快,TDD 就应该马上能看到结果。
rspec 和 unit test 都用过,个人还是比较喜欢 unit test 的简洁,rspce 比较方便的是可以单独执行一个 spec 文件里面的一小段,而 unit test 没有找到对应的方法。
其实关于 unit test 跟 rspec 的争论一直就没有停过。DHH 对 rspec 是不太感冒的。我觉得他们各有各的好.对于大得项目用 fixture 的话,可能需要更多技巧了。看个人喜好吧
很久不用 testunit 了,现在 rspec 的速度已接受 用 testunit 的人可以看一下我很久前写的 gem, https://github.com/allenwei/rt
rt test_file.rb #单个文件 rt test/*/test_.rb #多个文件 rt test/unit/ #一个目录 rt test_file.rb:5 #行号
FactoryGirl 用起来了,昨天做功能测试时,发现 Fixture 取不到属性,用 Girl 就很好。
test "should create ent_profile" do
assert_difference('EntProfile.count') do
post :create, ent: FactoryGirl.attributes_for(:ent_profile)
end
assert_redirected_to ent_path(assigns(:ent))
end
确实不错,打算替换 Fixture 了,虽然两者的侧重的概念不一样,但 fixture 的活 girl 都能干。
wooooo... 我的 unit test 切换到 rspec 了,spork,guard,textmate 对 rspec 支持更好,写了两小时,真的来感觉了,开始体会到 tdd 威力了,确实比我写几句再到流览器中看结果要快。。。
Yeah.
Cucumber 我觉得最大的好处是。。。QA 可以直接自己写 Test,或者 PM 也可以很容易理解是到底在做什么功能。
我挺喜欢 test/unit 的,反正也一直用 mocha,所以用不着 rspec 的 mock
先是写的 unit test,后来@hisea用的 rspec,就跟过去了。