यह एक कठिन और खुला अंत प्रश्न है जो मुझे पता है, लेकिन मैंने सोचा कि मैं इसे फर्श पर फेंक दूंगा और देख सकता हूं कि किसी के पास कोई दिलचस्प सुझाव है या नहीं।मैं कोड-जनरेटर का परीक्षण कैसे करूं?
मैं एक कोड-जनरेटर है कि हमारे सी ++ कोड (बड़ा घूँट के माध्यम से उत्पन्न किया था) के लिए हमारी अजगर इंटरफ़ेस लेता है और WebServices के रूप में इस का खुलासा करने के लिए आवश्यक कोड उत्पन्न करता है विकसित किया है। जब मैंने इस कोड को विकसित किया तो मैंने इसे टीडीडी का उपयोग करके किया, लेकिन मुझे अपने परीक्षण नरक के रूप में भंगुर पाया गया है। चूंकि प्रत्येक परीक्षण अनिवार्य रूप से यह सत्यापित करना चाहता था कि किसी दिए गए इनपुट कोड (जो सी ++ हेडर होता है) के लिए मुझे आउटपुट कोड का एक छोटा सा हिस्सा मिलेगा, मैंने एक छोटा इंजन लिखा था जो एक्सएमएल इनपुट फाइलों से परीक्षण परिभाषाओं को पढ़ता है और परीक्षण उत्पन्न करता है इन अपेक्षाओं के मामले।
समस्या यह है कि मैं कोड को संशोधित करने में डर रहा हूं। वह और तथ्य यह है कि इकाई स्वयं परीक्षण करती है: जटिल, और बी: भंगुर।
तो मैं इस समस्या के वैकल्पिक दृष्टिकोणों के बारे में सोचने की कोशिश कर रहा हूं, और यह मुझे मारता है मैं शायद इसे गलत तरीके से निपट रहा हूं। हो सकता है कि मुझे परिणाम पर अधिक ध्यान केंद्रित करने की आवश्यकता हो, आईई: क्या मैं जो कोड उत्पन्न करता हूं वह वास्तव में चलता है और जो मैं चाहता हूं वह करता हूं, कोड को जिस तरीके से मैं चाहता हूं उसे देखता हूं।
क्या किसी को इस तरह के किसी भी अनुभव का कोई अनुभव मिला है, जिसे वे साझा करना चाहते हैं?
मुझे वास्तव में एक ही समस्या का सामना करना पड़ रहा है, और नीचे दिए गए उत्तरों में से कोई भी वास्तव में संतोषजनक नहीं है। अनुमोदित, आप इकाई जनरेटर के टुकड़ों का परीक्षण कर सकते हैं। समस्या यह है कि आप कैसे जानते हैं कि जेनरेट कोड सही है, यानी, कोई रिग्रेशन या ऐसा कुछ भी नहीं है, और इसलिए आप जेनरेट कोड के लिए स्वचालित परीक्षण कैसे लिखते हैं (चाहे उन्हें इकाई या एकीकरण परीक्षण कहा जाता है)? –
@ जेम्स: वहां कोई आसान जवाब नहीं है ... मैंने अभी इस प्रश्न और प्रतिक्रियाओं को फिर से पढ़ लिया है और उस समय मेरे सभी मुद्दों में बाढ़ आ रही है। मैं आने वाले हफ्तों में यह एक और शॉट दे सकता हूं क्योंकि मैं समय-समय पर विभिन्न प्रतिगमनों के साथ समाप्त हो रहा हूं और इन्हें पहचानने के लिए और अधिक महत्वपूर्ण हो रहा है। – jkp
इसकी एक बड़ी भारी स्ट्रिंग तुलना। एएसटी – Nikos