是否有充分理由将Rspec用于控制器和视图?
我的观点在很大程度上依赖于Javascript,据我所知,Rspec不会在视图上处理javascript / ajax。我也使用Cucumber + Selenium。
我应该将它用于控制器吗?
仅仅使用Cucumber + Selenium来应用行为是不够的?如果黄瓜测试通过,然后它通过,为什么我要烦扰Rspec视图和控制器测试?
有人可以启发我这个话题吗?
答案 0 :(得分:5)
我使用了Cucumber + Shoulda的组合,但我要告诉你的内容仍然适用于你的设置。
在测试控制器时,我在功能测试中使用了Shoulda来击中我所有的“负认证”情况。例如:
我为此使用了Shoulda,因为我一直在寻找的是我被踢到了登录页面,而且任何试图被恶意访问的模型实际上都没有被改变。我可以使用Cucumber,但我发现使用一些Shoulda宏和一些功能测试更容易,也不那么麻烦。应该是一个非常适合的背景。
然后对于“良好的身份验证”情况,我使用Cucumber。比如:
这些类型的测试要求我检查一些实际的页面内容,而不是一遍又一遍地检查“拒绝访问”。我发现Cucumber的描述性在这里非常适合。
答案 1 :(得分:0)
如果你构建了一套完整的测试,你可以使用selenium,但是如果你想从应用程序的其余部分测试你的javascript单独行为,你可以考虑使用一个javascript测试框架,比如QUnit。