Rails3 - 测试 - 什么是关系错误而且无效?

时间:2011-12-09 00:48:11

标签: ruby-on-rails unit-testing

在以下代码中,错误支持无效吗?

换句话说无效?如果错误列表为真,则为真或不确定

或无效?独自工作?

测试“产品属性不能为空”do product = Product.new

断言product.invalid?断言product.errors [:title] .any? 断言product.errors [:description] .any?

断言product.errors [:price] .any?

断言product.errors [:image_url] .any? 结束

另外,我可以假设:

功能测试(用于控制器)在运行时为用户执行, 而单元测试(模型/数据库)则用于开发期间

感谢!强文

1 个答案:

答案 0 :(得分:0)

测试在开发期间运行,以尝试确保您生成的代码尽可能没有错误。

单元测试检查小的代码单元(例如单个模型),而功能测试检查需要几个步骤的“功能”(例如“签名”过程)。

valid?函数实质上使模型通过定义的验证器,并检查是否存在错误。换句话说,如果@user.errors数组(例如)包含entires,valid?将返回false。

但是,再一次,测试用于检查您是否正确开发代码,并且不会在生产中运行。