2013-04-10 66 views
1

测试和Rspec对我来说是新的。目前,我正在与Shoulda和Capybara一起使用Rspec来测试我的应用程序。测试模型,控制器,帮助器,路由和请求都很好。但是,我应该在视图中完全测试什么?其实我想用包括DOM在内的视图来测试所有东西,但我也不想过度使用东西。我应该在视图中测试什么?

回答

3

这三样东西是一个很好的起点

  1. 使用水豚去开始在你的网站的根目录,并将它点击链接和任何直到它到达你想要测试的视图。

  2. 请确定页面上应该显示的内容是什么,实际上是在页面上显示的。所以,如果他们'用户'去了产品1页面,请确保所有的内容都在其中。

  3. 如果不同的用户看到不同的内容,请确保它正常工作。因此,如果管理员用户看到管理员类型的按钮,请确保这些按钮是用户是管理员时的按钮,而不是当用户不是时。

这3件事情是一个很好的基础。即使是第一个也是一个很大的胜利。这将捕捉任何您可能意外引入的奇怪视图语法错误,因为语法错误将会通过测试。

1

在我的工作中,我们只使用RSpec进行单元测试。

对于业务测试或行为测试,我们使用的Cucumber对商业和IT人员来说更具可读性。 这就像是您与您的企业签约的合同,或者就像您可以执行的文档一样。

看一看黄瓜:http://cukes.info/

+1

我第二个黄瓜。我也一起使用水豚。 – 2013-04-10 17:16:47

+1

黄瓜是我可以用来测试视图的另一种选择。但是我要求的是“我应该怎样在视图中完全测试?”。 – 2013-04-10 18:06:51

1

我用查看规格验证视图使用我在jQuery代码取决于ID和班级。

并测试相同页面的不同版本。例如:

我不想创建两个完整的请求或功能规格来检查新用户看到welcome message A和返回用户welcome message B。相反,我会选择其中一种情况,为其编写一个请求或功能规范,然后添加一个测试这两种情况的附加视图规范。

Rails Test Prescriptions可能对你很有意思,因为它有一个专门用于查看测试的章节。

相关问题