7
只是在simplecov如何确定一条线是否被测试行使之后作了一些说明。Simplecov覆盖率报告似乎错过了某些行
我有以下方法:
def over?
end_at < Time.zone.now
end
其中end_at是在物体上一个ActiveRecord属性。
这是在以下规范行使:
describe CalendarEntry do
it 'can determine that an event has ended' do
@entry.end_at = 1.day.ago
@entry.over?.should be_true
end
end
运行与覆盖该规范之后,它显示了以下结果:
我已经运行在调试模式下测试在这条线上有一个断点,并确认该规范确实击中了它。
这不是孤立在这个方法中的这一行,包括使用ActiveRecord关联的getter的每一行都没有被显示。可能是巧合,但似乎有点奇怪。
环境:ruby 1.9.3-p327(mri),rails 3.2.8,simplecov 0.7.1,rspec 2.10.0。
为什么simplecov认为它没有被覆盖的任何想法?
你有一个测试,将返回错误'over?'?这可以解释被击中的方法,但不是所有测试代码的结果。 –
谢谢@PaulFioravanti,我也有一个负面测试,它作为本次报道会的一部分运行。 –
你能找出问题出在哪?如果是这样,请分享!如果没有,你是否可以编辑你的问题来包含你的规范的全文,即在哪里定义了@入口,以及测试的主题是什么。 –