2014-12-05 9 views
14

मैंने इसे पहले नामित करने से पहले अपनी परियोजना को डुप्लिकेट किया था। नाम बदलने के बाद मैंप्रोजेक्ट का नाम बदलने के बाद मुझे <XCTest/XCTest.h> नहीं मिला।

Lexical or Preprocessor Issue <XCTest/XCTest.h> not found. 

त्रुटि मुझे जो

#import <XCTest/XCTest.h> 

इसके अलावा अगली पंक्ति

@interface SpyShotTests : XCTestCase 

"XCTestCase" है करने के लिए कॉल myapptests.m फाइल करने के लिए निर्देशित करता हो रही है बैंगनी में हाई-लाइट नहीं।

मैंने जो भी ट्यूटोरियल देखा है, उसने मुझे बिल्ड सेटिंग्स में फ्रेमवर्क खोज पथ पर निर्देशित किया है - लेकिन फ्रेमवर्क सर्च पथ बिल्कुल प्रारंभिक फ़ाइल जैसा ही है और वह फ़ाइल बिना किसी समस्या के बनाता है।

उत्तर

29

मैं कुछ इसी तरह से आया और मुझे आश्चर्य है कि मेरा समाधान सहायक हो सकता है या नहीं।

आप यह जांचना चाहेंगे कि त्रुटि को फेंकने वाली फ़ाइल उपयुक्त लक्ष्य स्रोत के "संकलन स्रोत" में शामिल है। यह संभव है कि आपकी फ़ाइल शामिल नहीं हो सकती है। मेरे मामले में इसे परियोजना लक्ष्य के साथ शामिल किया गया था, न कि परीक्षण लक्ष्य के साथ। चूंकि XCTest केवल टेस्ट लक्ष्य के साथ ही पहुंच योग्य है, इसलिए यह मेरे लिए "XCTest/XCTest.h फ़ाइल नहीं मिली" त्रुटि उत्पन्न करने के लिए संकलित नहीं होगा।

परियोजना लक्ष्य >> चरण का निर्माण >> संकलित सूत्रों का कहना है: Making sure your test file is added as a compile source for the test target.

आप या तो स्वयं ऊपर छवि के अनुसार "संकलित सूत्रों का कहना है" में जोड़कर इसे ठीक कर सकते से फ़ाइल को हटा सकते हैं परियोजना और यह फिर से जोड़ने के लिए, टेस्ट लक्ष्य का चयन करना सुनिश्चित बनाने के लिए जब आप फिर से जोड़: Adding a new file to the Test Target.

मामले में यह किसी और मैं एक परीक्षण का मामला फ़ाइल (फाइल सिस्टम में) जाने के बाद इस में आए मदद करता है और फिर इसे अपने परीक्षण प्रोजेक्ट में दोबारा जोड़ना (राइट क्लिक करें, 'फाइलें जोड़ें' परियोजना '...')। यह पता चला है कि मैं टेस्ट लक्ष्य में फ़ाइल नहीं जोड़ रहा था - मैं इसे सिर्फ परियोजना लक्ष्य में जोड़ रहा था।

1

Xcode 7.2.1/स्विफ्ट 2.1.1:

जब मैं किसी नए फ़ाइल बनाया है, मैं iOS>Source>Swift File चुना है, और भले ही मैं टेस्ट लक्ष्य जाँच की, मैं अभी भी import XCTest लाइन पर एक त्रुटि मिली:

error: cannot load underlying module for 'XCTest'

, कि त्रुटि से छुटकारा पाने के लिए जब मैं मैं iOS>Source>Unit Test Case Class का चयन करने के लिए किया था एक नई फ़ाइल बनाया है, और मैं सब कुछ के लिए चूक स्वीकार कर लिया।

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