RSpec模型简单测试(二)

测试错误也要通过方法

上一节我们我搭建了一个简单的Rails项目,并加入简单的测试,在测试的过程中如果用户名为空,测试报错,那么在很多情况下,我们在找错误的过程中,这并不是受到影响的主要错误,我要跳过该错误,简言之就是让这个错误的能够验证通过,本节我们来简单探讨一下。

在rails项目中,验证的过程只和Models相关,和Contrllers ,Views层没有任何关系。那么用户名为空不能通过测试,我们尝试给它赋初始值,看看结果会如何?

方法一、修改模型,加入默认值:

field :name, type: String , default:"za"

此时,我们再执行一次,通过测试

方法二、同样修改模型,搞清楚模型里面的字段也是属性,模型是一个类,也就是说只要在这个类加上类的属性以后同样可行,只不过代码彻底改变了,代码如下:

class Patient

  # include Mongoid::Document

  # field :name, type: String , default:"za"

  # field :sex, type: String

  def name

  @name

  end

  def name=(val)

  @name = val

  end

end

上面类的属性也等同于下面:

attr_accessor :name

处理好这一切以后 我们将set方法@name设置一个字符串,这样子就可以啦

不用担心,测试同样是通过的。

以上两种方式说明:测试单独对模型测试,没有涉及到其他包括数据库在内。

小记到此结束。请大佬们笔下留情。。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容