2010-06-09 15 views
7

जब दृश्य स्टूडियो 2010 के तहत एक नया इकाई परीक्षण पैदा संदर्भ मेनू का उपयोग कर मैं इस त्रुटि मिल रही है नहीं मिला है (राइट क्लिक करें विधि नाम -> "यूनिट टेस्ट उत्पन्न"):विधि के लिए निजी Accessor

Private Accessor for methodName is not found. Please rebuild the containing project or run the Publicize.exe manually. 

विधि सार्वजनिक (है जाँच की है कि एक फ़िल्टर लागू करने "यूनिट टेस्ट उत्पन्न" संवाद में गैर सरकारी तरीकों नहीं दिखाने के लिए लगाने से।

दृश्य स्टूडियो स्वचालित रूप से .accessor फ़ाइल किसी तरह का बनाता है। मैं करने की आवश्यकता है इसमें कुछ भी करें?

पीआर और क्या हो सकता है oblem?

संपादित (अधिक जानकारी संगत हो सकती)

  • मैं, एक वेबसाइट परियोजना के अंदर कुछ वर्गों का परीक्षण करने हालांकि वे किसी भी वेबपेज से संबंधित सामान नहीं करते कोशिश कर रहा हूँ। वे सिर्फ सादे पुराने सी # कक्षाएं हैं।
  • मेरे सभी वर्ग नाम यूनिट टेस्ट क्लास के भीतर ClassName_Accessor के रूप में उपलब्ध हैं। और यह संकलक को विधि हस्ताक्षर के बारे में शिकायत करने का कारण बनता है जो सही नहीं है।

उत्तर

0

"एक्सेसर" एक कक्षा है जो आपके परीक्षण में शामिल कक्षाओं में से एक की तरह काम करती है, लेकिन परीक्षण विधि के पास इसके निजी और संरक्षित तरीकों और क्षेत्रों तक पहुंच है। विशेष रूप से, एक्सेसर कक्षाओं का उपयोग निजी और संरक्षित तरीकों के परीक्षण के लिए किया जाता है।

ऐसा लगता है जैसे एक्सेसर के साथ कोई समस्या है, इसलिए आप इसे मिटाने और फिर से बनाने का प्रयास करना चाहेंगे। परियोजना को पुनर्निर्माण करें। फिर, दायां माउस अपने कोड पर क्लिक करें और जहां यह "यूनिट टेस्ट बनाएं" कहता है, वहां एक और विकल्प होना चाहिए जो "निजी एक्सेसर बनाएं" कहता है।

+0

मैंने ऐसा किया है "निजी एक्सेसर बनाएं" चीज़, और यह कोई चीज़ नहीं बदलेगी। और मुझे ऐसा करने की आवश्यकता नहीं है क्योंकि सभी वर्ग और विधियां सार्वजनिक हैं। इसके अलावा, कृपया मेरे संपादन की जांच करें, मैं इस तथ्य का अनुमान लगा रहा हूं कि मैं केवल कक्षा नामों तक पहुंच सकता हूं ClassName_Accessor को समस्या के साथ कुछ करने के लिए हो सकता है। – Farinha

+0

यह अजीब है। मुझे डर है कि मैं सेवा का नहीं हो सकता, फिर ... मुझे नहीं पता कि अगर आप टेस्ट कोड में गैर-सार्वजनिक तरीकों को नहीं बुला रहे हैं तो आपको कोई समस्या हो सकती है। क्या परीक्षण प्रोजेक्ट बिल्कुल बनाया जाता है, या क्या त्रुटि इसे रोकती है? –

5

मैंने इसके साथ अपनी समस्या का समाधान किया, मैंने टेस्ट संदर्भ फ़ोल्डर को टीएफएस के साथ एक बॉट किए गए विलय के दौरान अलग कर दिया था।

परीक्षण संदर्भ फ़ोल्डर आपके परीक्षण प्रोजेक्ट में रहता है और इसमें ".accessor" के साथ स्रोत नामस्थान के नाम पर एक फ़ाइल शामिल होगी। चूंकि मैंने अपनी परियोजना से फ़ोल्डर को अलग कर दिया था, मैंने नहीं देखा कि फ़ाइल अभी भी वहां थी, इसलिए मैंने परीक्षण प्रोजेक्ट को हाइलाइट किया और समाधान एक्सप्लोरर में "सभी फ़ाइलें दिखाएं" बटन दबाया। जब मुझे अंततः फ़ाइल मिली, मैंने इसे हटा दिया और निजी एक्सेसर को फिर से जेनरेट किया (अपनी कक्षा में राइट क्लिक करें और "निजी एक्सेसर जेनरेट करें" चुनें)।

तो नीचे की रेखा, यदि टेस्ट संदर्भ मौजूद है लेकिन परियोजना से अलग हो गया है तो आप निजी एक्सेसर को पुन: उत्पन्न करने में सक्षम नहीं होंगे और विजुअल स्टूडियो आपको यह नहीं बताएगा कि फ़ाइल नामकरण/लॉकिंग संघर्ष है।

संबंधित मुद्दे