RSpec模型测试

(1)模型测试应该包含:测试

    针对create方法的测试,若是参数盒饭,测试应该经过;ui

    没法经过数据验证的数据,测试应该失败;spa

    测试类方法和实例方法是否能够正常使用; it

(2)rspec的测试文件命名必须是测试文件名_spec.rb,同时必须遵照测试的文件夹约定    require

(3)每一个测试文件顶部都应该包含require 'spec_helper'model

(4)RSpec V2.11版本后使用了expect().to和expect().to_not + 匹配器替代了老版本的should和should_not方法

(5)RSpec匹配器:be_true、be_valid、have(number).errors_on(:attribute)、eq、includeerror

(6)在model测试中,当侧类方法和实例方法时,一个方法须要分几种状况测试的,最好在嵌套一个describe,describe内用context区分每种状况命名

(7)能够用before :each {}来去除重复,before :each只在定义的代码块中有效数据

(8)除了before外,还有after,用于每一个case后执行,已before用法一致

(9)可读性>消除代码重复的重要性,当在消除代码重复会影响可读性时,能够适当的有些重复

(10)每一个测试只测试一种状况,明确指定但愿获得的结果,使用动词说明

(11)测试但愿看到的和不但愿看到的结果:分两种状况思考,分别测试

(12)测试极端状况,须要根据范围确边界值取多个值测试

相关文章
相关标签/搜索