2010-06-04 58 views
6

假设您添加了一个控制器和行动(例如:story/index),并希望通过关于Ruby on Rails,如何在另一个功能测试中断时运行ONE功能测试?

rake test:functionals 

运行功能测试,然后你发现你的同事正在研究该项目的另一部分实际上打破了测试在更早的地方(另一个控制器/操作),在您的功能测试发生之前。

在这种情况下,你可以运行一个功能测试,这是你的吗?

回答

10

明智屁股回答
如果你的同事打破了测试,那么他应该修复试验,或者他不应该犯的代码来回购。这是我们通常在我工作的项目中的主要原则。

尼斯回答
试试这个

rake test:functionals TEST=test/functional/xy_test.rb 

或者这
运行没有耙但明确$ -loadpath这里工作过 一个测试 “红宝石-I目录” 指定的$ loadpath。否则,你将不会加载测试环境,并且“require test_helper”失败!

ruby -I test test/functional/xy_test.rb 
+1

谢谢!第二个工程 - 由于某种原因,第一个打破... – 2010-06-04 21:29:39

+1

@动静能量尝试'耙测试TEST =测试/功能/ xy_test.rb' – 2013-09-12 06:56:02

0

1)也许是:耙测试:单位

2)这个链接也可能帮助你:

http://rake.rubyforge.org/

3)这也可以帮助你:

“典型的Rails测试进入 以下表格:

单位(模型)这些测试业务逻辑 在您的模型。一篇精心编写的Rails 应用程序应该在其模型中包含大量的 其代码,因此您的测试的大部分应该是这些。

功能(控制器)这些测试 个别控制器动作在 隔离。

集成(控制器到控制器) 这些测试状态突变 之间和/过多个动作 路由,即确保事情 不完全爆炸如用户点击 通过典型的工作流程。

赛程用来装例如模型用于容易地实例化在测试中那些 模型 数据,避免了手动创建模型 对象的繁琐 过程。

单位/助手这些测试助手在视图中使用了 。

换句话说,基本 关系是这样的:

模型装置试验控制器功能 测试视图(作为部分)功能 测试控制器到 控制器集成测试”

发现在http://rails-nutshell.labs.oreilly.com/ch09.html

+0

单元测试真的是测试模型...功能是测试控制器并认为...他们是MVC框架中的MVC。 – 2010-06-05 09:47:16

0

退房single_test宝石,它可以很容易地运行特定的测试(或组tes ts)