簡體   English   中英

Simplecov報道似乎錯過了某些行

[英]Simplecov coverage report seems to miss certain lines

在對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

運行帶有coverage的規范后,它會顯示以下結果:

報道報道

我已經在調試模式下運行測試,並在此行上有一個斷點,並確認該規范確實正在觸及它。

在此方法中,這不僅僅與此行隔離,包含使用ActiveRecord關聯的getter的每一行都顯示為未覆蓋。 可能是巧合,但似乎有點奇怪。

環境:ruby 1.9.3-p327(mri),rails 3.2.8,simplecov 0.7.1,rspec 2.10.0。

關於為什么simplecov認為它沒有被涵蓋的任何想法?

好的,所以我在Windows上運行的JRuby上添加了同樣的問題。 答案實際上是向我提示的,如果沒有在調試模式下運行,Simplecov會錯過一些行。

(j)ruby --debug -S rspec spec

使用--debug選項它確實有效,我按預期恢復到100%覆蓋率。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM