कुछ स्पष्टीकरण के बाद कि कैसे सरलकोव निर्धारित करता है कि परीक्षण द्वारा एक लाइन का उपयोग किया गया है या नहीं। जिसमेंसिंपलकोव कवरेज रिपोर्ट कुछ लाइनों को याद करने लगती है
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 संबंधित गेटर का उपयोग शामिल है, को कवर नहीं किया गया है। संयोग हो सकता है, लेकिन थोड़ा अजीब लगता है।
पर्यावरण: रूबी 1.9.3-पी 327 (एमआरआई), रेल 3.2.8, सरलकोव 0.7.1, आरएसपीसी 2.10.0।
सरलकोव क्यों सोचता है कि यह कवर क्यों नहीं है पर कोई विचार?
क्या आपके पास एक परीक्षण है जो 'ओवर?' के लिए झूठी वापसी करेगा? यह हिट होने वाली विधि को समझा सकता है, लेकिन उस कोड के परीक्षण के लिए सभी नतीजे नहीं हैं। –
धन्यवाद @ पॉलफियोरावती, मेरे पास नकारात्मक परीक्षण भी है और यह इस कवरेज सत्र के हिस्से के रूप में चलाया गया था। –
क्या आप यह समझने में सक्षम थे कि समस्या क्या थी? यदि हां, तो कृपया साझा करें! यदि नहीं, तो क्या आप अपने प्रश्न का पूरा पाठ शामिल करने के लिए अपने प्रश्न को संपादित करने में सक्षम होंगे अर्थात कहां '@ एंट्री' परिभाषित किया गया है और परीक्षण का 'विषय' क्या है। –