XCTest चलाएं

इस गाइड में बताया गया है कि Firebase Test Lab.

पहला चरण: अपने प्रोजेक्ट के लिए इकट्ठा किए गए डेटा की जगह को कॉन्फ़िगर करें

Xcode में, iOS आर्टफ़ैक्ट को कंपाइल किया जाता है, जिसमें आपके बनाए गए टेस्ट भी शामिल हैं. डेटा डायरेक्ट्री. अगर आप चाहें, तो उस डायरेक्ट्री के लिए डिफ़ॉल्ट जगह को बनाए रखा जा सकता है. हालांकि, फ़ाइलों के लिए ऐसी जगह चुनना ज़्यादा मददगार होता है जिसे आसानी से ऐक्सेस किया जा सके. ऐसा तब ज़रूरी होता है, जब आपको अक्सर Test Lab के साथ टेस्ट चलाने हैं:

  1. अपने प्रोजेक्ट को Xcode में खोलें.
  2. macOS के मेन्यू बार में, फ़ाइल > प्रोजेक्ट सेटिंग...
  3. मिलाया गया डेटा ड्रॉप-डाउन को यहां से बदलें डिफ़ॉल्ट जगह को पसंद के मुताबिक पर सेट करें.
  4. ड्रॉप-डाउन के नीचे मौजूद फ़ील्ड में, आउटपुट करने के लिए Xcode के लिए कोई जगह चुनें कोई और गड़बड़ी हुई है. (यह आपका FOLDER_WITH_TEST_OUTPUT)

दूसरा चरण: टेस्ट के लिए जेनरिक फ़ाइल बनाना

Test Lab XCTest फ़्रेमवर्क. अपने ऐप्लिकेशन के XCTests Test Lab डिवाइस पर चलाने के लिए, इसे किसी ऐसे डिवाइस पर टेस्ट करने के लिए बनाएं सामान्य iOS डिवाइस:

  1. Xcode फ़ाइल फ़ोल्डर की विंडो में सबसे ऊपर मौजूद डिवाइस के ड्रॉप-डाउन से, सामान्य iOS डिवाइस.
  2. macOS के मेन्यू बार में, प्रॉडक्ट > इसके लिए बनाएं > टेस्टिंग.

विकल्प के तौर पर, कमांड लाइन से अपना XCTest बनाया जा सकता है. टर्मिनल में इस कमांड का इस्तेमाल करें:

प्रोजेक्ट

xcodebuild -project PATH/TO/YOUR_WORKSPACE/YOUR_PROJECT.xcodeproj \
   -scheme YOUR_SCHEME \
   -derivedDataPath FOLDER_WITH_TEST_OUTPUT \
   -sdk iphoneos build-for-testing

कार्यस्थान

xcodebuild -workspace PATH/TO/YOUR_WORKSPACE.xcworkspace \
   -scheme YOUR_SCHEME \
   -derivedDataPath FOLDER_WITH_TEST_OUTPUT \
   -sdk iphoneos build-for-testing

तीसरा चरण: टेस्ट पर हस्ताक्षर करें और पुष्टि करें

  1. पक्का करें कि ऐप्लिकेशन और जांच के सभी आर्टफ़ैक्ट को साइन किया गया हो. उदाहरण के लिए, आपके पास Xcode के ज़रिए ऐसा करने के लिए, प्रॉविज़निंग प्रोफ़ाइल जैसी साइनिंग सेटिंग तय करें और पहचान. ज़्यादा जानकारी के लिए, यह देखें Apple Code साइनिंग.

  2. चलाकर ऐप्लिकेशन के हस्ताक्षर की पुष्टि करें codesign --verify --deep --verbose /path/to/MyApp.app जहां "MyApp" क्या अनज़िप किए गए फ़ोल्डर में ऐप्लिकेशन का नाम डालना होगा. यह संख्या हर प्रोजेक्ट के हिसाब से अलग-अलग होती है. अनुमानित आउटपुट MyApp.app: valid on disk है.

  3. अगर XCUITest चलाया जा रहा है, तो आपको codesign --verify --deep --verbose /path/to/MyTest-Runner.app चलाकर, टेस्ट और रनर की पुष्टि करनी होगी. यहां "MyTest", अनज़िप किए गए फ़ोल्डर में मौजूद रनर का नाम है. यह हर प्रोजेक्ट के लिए अलग-अलग होता है. अनुमानित आउटपुट MyTest-Runner.app: valid on disk है.

चौथा चरण: अपने ऐप्लिकेशन को पैकेज करें और उसे अपलोड करने की जांच करें

  1. टेस्ट बन जाने के बाद, इसे Test Lab पर अपलोड करने के लिए ज़िप करें:

    cd FOLDER_WITH_TEST_OUTPUT/Build/Products : \
    zip -r MyTests.zip Debug-iphoneos YOUR_SCHEME_iphoneosDEPLOYMENT_TARGET-arm64.xctestrun
    

टेस्ट फ़ाइलों को मैन्युअल तरीके से कंप्रेस करके भी, टेस्ट को पैकेज किया जा सकता है:

  1. Finder खोलें और यहां जाएं FOLDER_WITH_TEST_OUTPUT.

  2. वह फ़ोल्डर खोलें जिसमें प्रीफ़िक्स के तौर पर आपके प्रोजेक्ट का नाम है. इसके बाद, यहां जाएं Build/Products फ़ोल्डर अंदर.

  3. फ़ोल्डर Debug-iphoneos चुनें और YOUR_SCHEME_iphoneosDEPLOYMENT_TARGET-arm64.xctestrun और फिर उसे कंप्रेस करें.

पांचवां चरण: (ज़रूरी नहीं) ऐप्लिकेशन की जांच स्थानीय तौर पर करना

Test Lab के साथ अपना टेस्ट चलाने से पहले, इसे स्थानीय तौर पर इसके साथ चलाया जा सकता है: यूएसबी से कनेक्ट किए गए डिवाइस के काम करने के तरीके की जांच करना:

xcodebuild test-without-building \
    -xctestrun "Derived Data/Build/Products/YOUR_SCHEME.xctestrun" \
    -destination id=your-phone-id

अगले चरण

Firebase कंसोल में जांच को अपलोड करें और चलाएं या gcloud सीएलआई.