क्या कोई भी ऐसे टूल के सुझाव प्रदान कर सकता है जिसका उपयोग जावा प्रोग्राम के भीतर एक स्रोत-कोड (बाइट-कोड नहीं) स्तर पर उत्परिवर्तन करने के लिए किया जा सकता है? मुझे दोषों के साथ अपने स्रोत कोड को बीज करने की ज़रूरत है। यदि कोई मौजूद है, तो मैं एक जीयूआई के साथ एक आवेदन पसंद करूंगा।मैं अपने जावा प्रोग्राम के उत्परिवर्तन परीक्षण कैसे कर सकता हूं?
उत्तर
जब मैंने अध्यायों में से एक के लिए जीएमयू, we used Mu Java पर परीक्षण पर एक सॉफ्टवेयर इंजीनियरिंग कक्षा ली। एचटीएच
धन्यवाद! मैंने यह भी कोशिश की, लेकिन यह मेरे लिए काम नहीं करता है। @ ओवरराइड एनोटेशन अपवाद पैदा कर रहा है .. – damluar
यह ओपन सोर्स टेस्ट कवरेज टूल Jester द्वारा उपयोग की जाने वाली तकनीक है। यदि आप उपयुक्त टूल नहीं ढूंढ पा रहे हैं और खुद को बनाना चाहते हैं तो इसके स्रोत पर एक नज़र उपयोगी हो सकती है।
मुझे पीआईटी उत्परिवर्तन परीक्षण उपकरण मिला है, जो मुझे काफी पसंद है। मुजावा के साथ मेरे पास @ ओवरराइड एनोटेशन के कारण अपवाद हैं। ऐसा लगता है कि यह जावा 5/6 का समर्थन नहीं करता है।
यहां पीआईटी का अच्छा अवलोकन: http://dev.theladders.com/2013/02/mutation-testing-with-pit-a-step-beyond-normal-code-coverage/ –
आपकी आवश्यकता वास्तव में तो विकल्प के बारे में पता कर रहा हूँ स्रोत कोड परिवर्तन के लिए है, तो कर रहे हैं
जेस्टर - उत्परिवर्तन ऑपरेटरों कि काफी अस्थिर कर रहे हैं की एक सीमित संख्या प्रदान करता है। जेफ ऑफutt ने इसे शाखा परीक्षण लागू करने के लिए एक बहुत महंगा तरीका बताया। मेरा मानना है कि अपने स्वयं के ऑपरेटरों को परिभाषित करना संभव है, इसलिए यह शायद पूरी तरह से उचित नहीं है।
म्यू जावा - जावा 5
जुडी का समर्थन नहीं करता है - यह अन्य के बारे में ज्यादा पता नहीं है की तुलना में यह है कि यह मौजूद है
लावा - सुंदर बुनियादी ध्वनि और मैं इसे जावा 5 का समर्थन करता है नहीं लगता है
उत्तर से नीचे मैं अब पीआईटी का उपयोग करके देखता हूं। मुझे लगता है कि यह वास्तव में एक महान विकल्प है (मैंने इसे लिखा है इसलिए एक निश्चित पूर्वाग्रह हो सकता है), लेकिन यह एक बाइट कोड उत्परिवर्तन प्रणाली है।
MμClipse केवल JUnit 3 का समर्थन करता है और अब बनाए रखा है:
यहाँ यह एक बेंचमार्क है। इसके लिए जेस्टर, श्रमिक है और एक जटिल विन्यास की आवश्यकता है; प्लस अब और बनाए रखा नहीं है। सबसे अच्छा टूल जो मैं पा सकता हूं वह है जवालंच I had wrote a entire article about this !
"असली दुनिया में इसका बहुत कम आवेदन है"। दृढ़ता से असहमत, मैं यूके और पीआईटी (http://pitest.org/) में एक बहुत बड़ी मीडिया कंपनी में अनुबंध करता हूं उत्परिवर्तन परीक्षण के लिए बेहद उपयोगी है। अधिकांश सीआई बिल्ड 85% कवरेज पीआईटी उत्परिवर्तन परीक्षण के बिना असफल हो जाते हैं। पुन: "कुछ यादृच्छिक वर्णों को प्रतिस्थापित कर रहा है ..." उत्परिवर्तन का मतलब यह नहीं है। पीआईटी उत्परिवर्तन संकलित परिवर्तनों तक ही सीमित हैं।
यदि आपको 100% उत्परिवर्तन कवरेज की आवश्यकता होती है तो आप समकक्ष उत्परिवर्तनों से कैसे निपटते हैं? – henry
प्रमुख उत्परिवर्तन ढांचे (Major's website) एक संकलक-एकीकृत म्यूटेटर और जुनीट परीक्षणों के लिए एक उत्परिवर्तन विश्लेषक प्रदान करता है।
मेजर का म्यूटेटर जावा 7 कंपाइलर में एकीकृत है।यह कई उत्परिवर्तन ऑपरेटरों प्रदान करता है और समर्थन करता है, स्रोत कोड परिवर्तनशील के लिए दो विकल्प:
- उत्पन्न और संकलन
- उत्परिवर्ती और निर्यात उत्परिवर्तित स्रोत फ़ाइलों
- 1. मैं पाइथन और पीईक्यूटी के साथ अपने जीयूआई प्रोग्राम का परीक्षण कैसे कर सकता हूं?
- 2. मैं जीसी परीक्षण कैसे कर सकता हूं?
- 3. मैं कैसे परीक्षण कर सकता हूं: RSpec
- 4. मैं जावा प्रोग्राम के लिए .exe कैसे बना सकता हूं?
- 5. मैं अपने पर्ल सीजीआई प्रोग्राम को कैसे बना सकता हूं?
- 6. मैं अपने वास्तविक आईपैड पर अपने आईपैड ऐप का परीक्षण कैसे कर सकता हूं?
- 7. मैं अपने सभी PHPUnit परीक्षण कैसे चला सकता हूं?
- 8. मैं अपने प्रोग्राम
- 9. मैं फॉर्म प्रोग्राम के तर्क कैसे प्राप्त कर सकता हूं?
- 10. मैं अपने आईओएस डेवलपर प्रोग्राम अकाउंट के साथ कितने डिवाइस पंजीकृत कर सकता हूं?
- 11. क्या उत्परिवर्तन परीक्षण ढांचे मौजूद हैं?
- 12. मैं अपने जावा एप्लिकेशन के अंदर से जुनीट परीक्षण कैसे चला सकता हूं?
- 13. मैं अपने जावा एप्लिकेशन में प्रोग्रामिंग के सभी जुनीट परीक्षण कैसे चला सकता हूं?
- 14. मैं अपने प्रोग्राम के लिए कार्य प्रबंधक विवरण कैसे सेट कर सकता हूं?
- 15. मैं अपने प्रोग्राम के लिए "सक्षम फ़ंक्शंस" लाइसेंस फ़ाइल कैसे सुरक्षित कर सकता हूं?
- 16. मैं एक गो प्रोग्राम कैसे संकलित कर सकता हूं?
- 17. मैं नकारात्मक शून्य के लिए कैसे परीक्षण कर सकता हूं?
- 18. मैं अपने PHP कोड का परीक्षण कैसे करूं - मैं किस परीक्षण ढांचे का उपयोग कर सकता हूं?
- 19. मैं इसे चलाने के बिना एक्लिप्स में जावा प्रोग्राम कैसे संकलित कर सकता हूं?
- 20. लोकप्रिय वायरस स्कैनर के खिलाफ मैं अपने एप्लिकेशन का परीक्षण कैसे कर सकता हूं?
- 21. मैं सर्वर के बिना स्थानीय रूप से अपने एसएसएच-चाबियों का परीक्षण कैसे कर सकता हूं
- 22. मैं निष्पादन योग्य जावा प्रोग्राम कैसे बना सकता हूं?
- 23. सभी के बारे में प्रोफाइलिंग क्या है और मैं अपने जावा प्रोग्राम को कैसे प्रोफाइल कर सकता हूं?
- 24. मैं समय-सीमित परीक्षण आवेदन कैसे कर सकता हूं?
- 25. मैं MATLAB में एक जीयूआई कैसे प्रोग्राम कर सकता हूं?
- 26. मैं प्रोग्राम की स्थिति कैसे प्राप्त कर सकता हूं?
- 27. मैं वीबीए से पायथन प्रोग्राम कैसे कॉल कर सकता हूं?
- 28. मैं अपने प्रोग्राम को निष्पादित करने वाले व्यक्ति का उपयोगकर्ता नाम कैसे प्राप्त कर सकता हूं?
- 29. मैं जावा-प्रोग्राम के लिए प्रक्रिया नाम कैसे सेट कर सकता हूं?
- 30. मैं कोर डेटा माइग्रेशन का परीक्षण कैसे कर सकता हूं?
यह असली दुनिया में थोड़ा आवेदन है उत्पन्न के दौरान सभी उत्परिवर्ती एम्बेड – Bohemian
बस कुछ यादृच्छिक वर्णों को प्रतिस्थापित कर सकते हैं, लेकिन ज्यादातर मामलों में यह लेटल होगा (यानी परिणामस्वरूप प्रोग्राम संकलित नहीं होगा, अगर आपने स्ट्रिंग या टिप्पणी नहीं मारा है या वास्तव में भाग्यशाली रूप से प्रतिस्थापित किया है)। –
"असली दुनिया में इसका बहुत कम आवेदन है" एक खराब बहाना है। जब टेंसर, टोपोलॉजी या कैलकुस गणित विकसित किए गए थे, तो उनके पास बहुत कम "असली दुनिया का उपयोग" था। यह एक दिलचस्प सवाल है। कोड उत्परिवर्तन बहुत असली दुनिया अनुप्रयोग है। –