मैं एक प्रक्रियात्मक सी/सी ++ परियोजना पर काम कर रहा हूं। सार्वजनिक इंटरफेस में 4 कार्य होते हैं, प्रत्येक में काफी जटिल कार्य होते हैं। एक अज्ञात नामस्थान में उसी cpp
फ़ाइल में घोषित सहायक कार्य हैं। इस्तेमाल किया जा रहा परीक्षण ढांचा GTest है।यूनिट परीक्षण सी ++ कोड एक अनाम नामस्थान
हालांकि, इनमें से कुछ सहायक कार्य अपने स्वयं के यूनिट परीक्षण की आवश्यकता के लिए पर्याप्त जटिल हो रहे हैं। आम तौर पर, मैं इन सहायकों को अपनी टेस्टेबल इकाइयों में दोबारा कर दूंगा, लेकिन प्रोजेक्ट आवश्यकताएं बताती हैं कि सब कुछ एक cpp
में होना चाहिए, और केवल निर्दिष्ट फ़ंक्शंस सार्वजनिक रूप से दिखाई दे सकते हैं।
क्या कोई तरीका है कि मैं युग्मन को कम करने के दौरान सहायक परियोजनाओं का परीक्षण कर सकता हूं, और परियोजना आवश्यकताओं को यथासंभव निकटता से पालन कर सकता हूं?
एक संभावित समाधान था जो नामांकन को नाम के लिए नामित एक में बदलने के लिए मैक्रो का उपयोग करना था, और उत्पादन के लिए अज्ञात था। हालांकि, यह मुझे पसंद से थोड़ा गड़बड़ लग रहा था।
संभावित डुप्लिकेट [मैं एक ऐसे वर्ग का परीक्षण कैसे करूं जिसमें निजी विधियां, फ़ील्ड या आंतरिक कक्षाएं हों?] (Https://stackoverflow.com/questions/34571/how-do-i-test-a-class-that -हाउस-निजी-विधियों-फ़ील्ड-या-आंतरिक-वर्ग) – Raedwald