मुझे हमारे रेल ऐप में एक परीक्षण लटका है, यह पता नहीं लगा सकता कि कौन सा (क्योंकि यह विफल रहता है और विफलता रिपोर्ट नहीं मिलता है)। मुझे यह ब्लॉग पोस्ट http://bmorearty.wordpress.com/2008/06/18/find-tests-more-easily-in-your-testlog/ मिला है जो परीक्षण नाम मुद्रित करने के लिए एक सेटअप हुक जोड़ता है लेकिन जब मैं वही काम करने का प्रयास करता हूं तो यह मुझे त्रुटि के लिए तर्कों की गलत संख्या (0 के लिए 1) कहने में त्रुटि देता है। किसी भी मदद के लिए आभारी होंगे।रेल परीक्षण लटकाना - निष्पादन से पहले मैं परीक्षण नाम कैसे मुद्रित कर सकता हूं?
उत्तर
यह काम करेंगे आप रेक का उपयोग कर परीक्षण चलाते हैं:
rake test:units TESTOPTS="-v"
आप किस परीक्षण ढांचे का उपयोग कर रहे हैं? टेस्ट/यूनिट?
मैं आरएसपीसी पर एक नज़र डालेगा जो आपके परीक्षणों के लिए थोड़ा और संदर्भ प्रदान करेगा। तुम भी एक अच्छा एचटीएमएल रिपोर्ट है कि इस तरह दिखता है प्राप्त कर सकते हैं:
RSpec Result http://myskitch.com/robbyrussell/rspec_results-20070801-233809.jpg
था आप था किसी भी नाकाम रहने के परीक्षण, विशेष परीक्षा लाल होगा और यह विशिष्ट लाइनों का विस्तार होगा जहां परीक्षण आप प्रदान करने में विफल परीक्षण में असफल रहा और इस मुद्दे को हल करने के लिए आपको कहां देखना चाहिए, इस पर अधिक दृश्यता।
ब्लॉग पोस्ट में परिभाषा कंध विशिष्ट है (सेटअप (ब्लॉक) विधि मॉड्यूल में परिभाषित किया गया है Thoughtbot :: context.rb में कंधे। Musta.rb तब टेस्टकेस उस मॉड्यूल का विस्तार करता है)।
शुद्ध परीक्षण :: इकाई के लिए परिभाषा
# File test/unit/testcase.rb, line 100
def setup
end
है कि आप क्या कर सकता है है
def setup
log_test
end
private
def log_test
if Rails::logger
# When I run tests in rake or autotest I see the same log message multiple times per test for some reason.
# This guard prevents that.
unless @already_logged_this_test
Rails::logger.info "\n\nStarting #{@method_name}\n#{'-' * (9 + @method_name.length)}\n"
end
@already_logged_this_test = true
end
संपादित
तुम सच में संपादित करने के लिए नहीं चाहते हैं तो आपके फाइलें जिन्हें आप फिर से खोलने का परीक्षण कर सकते हैं और इसके बजाय रन का विस्तार कर सकते हैं:
class Test::Unit::TestCase
alias :old_run :run
def run
log_test
old_run
end
end
इस काम करना चाहिए (मैं चारों ओर गहरे लाल रंग का नहीं है, हालांकि परीक्षण करने के लिए)
मैं छोड़ देना! (निराशा में)
मैंने कोड की जांच की और रेल वास्तव में दृश्य के पीछे जादू करता है, शायद यही कारण है कि रनफिनिंग रन काम नहीं करता है।
बात यह है कि: जादू का हिस्सा ActiveSupport :: CallBack और सेटअप और टियरडाउन के लिए कॉलबैक बनाना शामिल है।
जिसका अर्थ है
class Test::Unit::TestCase
setup :log_test
private
def log_test
if Rails::logger
# When I run tests in rake or autotest I see the same log message multiple times per test for some reason.
# This guard prevents that.
unless @already_logged_this_test
Rails::logger.info "\n\nStarting #{@method_name}\n#{'-' * (9 + @method_name.length)}\n"
end
@already_logged_this_test = true
end
end
end
निश्चित रूप से
और वास्तव में काम करना चाहिए इसके साथ परीक्षण चलाने के काम करता है। जहां मैं उलझन में हूं कि यह पहली चीज है जिसकी मैंने कोशिश की और यह उसी त्रुटि के साथ असफल रहा जो आपको
एक सिक्का। – nurettin
टेस्ट नाम की छपाई टेस्टरुनर की ज़िम्मेदारी है। यदि आप कमांड लाइन से अपने परीक्षण चला रहे हैं तो आप टेस्ट केस नाम प्रिंट करने के लिए -v विकल्प निर्दिष्ट कर सकते हैं।
उदाहरण:
ruby test_Foo.rb -v
Loaded suite test_Foo
Started
test_blah(TestFoo): .
test_blee(TestFoo): .
Finished in 0.007 seconds.
2 tests, 15 assertions, 0 failures, 0 errors
यह test_helper.rb
class Test::Unit::TestCase
# ...
def setup_with_naming
unless @@named[self.class.name]
puts "\n#{self.class.name} "
@@named[self.class.name] = true
end
setup_without_naming
end
alias_method_chain :setup, :naming unless defined? @@aliased
@@aliased = true
end
@@ एलियास चर फिर से aliased जब आप में एकाधिक फ़ाइलों पर चला जा रहा से रहता है, मैं क्या उपयोग है एक बार; @@ नाम प्रत्येक टेस्ट से पहले प्रदर्शित होने से नाम रखता है (बस पहले चलाने से पहले)।
सहायता के लिए सभी को धन्यवाद, मैं परीक्षणों के माध्यम से जा रहा हूं और इन अंतिम जोड़े उत्तरों के आने से पहले प्रत्येक परीक्षण फ़ाइल के लिए प्रत्येक सेटअप विधि में log_name में कॉल जोड़ रहा हूं। एक बार फिर धन्यवाद।
- 1. मैं कैसे परीक्षण कर सकता हूं: RSpec
- 2. मैं जीसी परीक्षण कैसे कर सकता हूं?
- 3. समानांतर परीक्षण निष्पादन rspec
- 4. मैं एक विंडोज सेवा का परीक्षण कैसे कर सकता हूं?
- 5. मैं आरओआर पर तेजी से परीक्षण कैसे चला सकता हूं?
- 6. मैं रेल कंसोल कैसे शुरू कर सकता हूं और परीक्षण डेटाबेस का विशेष रूप से उपयोग कैसे कर सकता हूं?
- 7. रजिस्ट्रार रिकॉर्ड अपडेट करने से पहले मैं एक नए नेमसर्वर का परीक्षण कैसे कर सकता हूं?
- 8. मैं यूनिट परीक्षण jquery संवाद कैसे प्रदर्शित कर सकता हूं?
- 9. मैं कोर डेटा माइग्रेशन का परीक्षण कैसे कर सकता हूं?
- 10. WP 7.5 - मैं टॉम्बस्टनिंग का परीक्षण कैसे कर सकता हूं?
- 11. मैं समय-सीमित परीक्षण आवेदन कैसे कर सकता हूं?
- 12. मैं अपने स्थगित मूल्यांकन/निष्पादन कार्यक्षमता का नकल या परीक्षण कैसे कर सकता हूं?
- 13. मैं जुनीट परीक्षण निर्भरताओं को कैसे निर्दिष्ट कर सकता हूं?
- 14. मैं एक जैस्पर रिपोर्ट का परीक्षण कैसे कर सकता हूं?
- 15. क्या नूनिट-कंसोल परीक्षण परीक्षण में सभी परीक्षण नाम सूचीबद्ध कर सकता है?
- 16. मैं पर्ल में यूनिट परीक्षण कैसे कर सकता हूं?
- 17. मैं मॉडलस्टेट का परीक्षण कैसे कर सकता हूं?
- 18. मैं परीक्षण कैसे कर सकता हूं कि एएस 3
- 19. मैं नकारात्मक शून्य के लिए कैसे परीक्षण कर सकता हूं?
- 20. मैं इस फ्लास्क ऐप का परीक्षण कैसे कर सकता हूं?
- 21. एमएसटेस्ट - असेंबली में प्रत्येक परीक्षण से पहले निष्पादन विधि
- 22. क्या मैं क्लाइंट को कॉल करने से पहले SmtpClient का परीक्षण कर सकता हूं।()?
- 23. मैं जेनकींस से कैस्परजेस जावास्क्रिप्ट परीक्षण कैसे चला सकता हूं?
- 24. परीक्षण (रेल)
- 25. प्रत्येक परीक्षण से पहले पुनर्निर्माण के लिए रेल परीक्षण डेटाबेस कैसे प्राप्त करूं?
- 26. परीक्षण (रेल)
- 27. रेलवे परीक्षण में पैरामीटर के साथ मैं आसानी से एक यूआरएल कैसे पार्स कर सकता हूं?
- 28. परीक्षण निष्पादन रिपोर्ट
- 29. मैं कैसे दावा कर सकता हूं कि रेल एकीकरण परीक्षण में कोई मार्ग मिलान नहीं है?
- 30. मैं रेल प्लगइन में विचारों का परीक्षण कैसे कर सकता हूं?
परीक्षण व्यतीत कर रहा है, नहीं नाकाम रहने, तो यह जवाब प्रासंगिक नहीं है। प्रयास के लिए –