View a markdown version of this page

針對 AWS Device Farm 中的 XCTest UI 測試進行故障診斷 - AWS Device Farm

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

針對 AWS Device Farm 中的 XCTest UI 測試進行故障診斷

下列主題會列出在上傳 XCTest UI 測試期間出現的錯誤訊息,並建議解決每個錯誤的解決方法。

上傳錯誤

當您上傳 XCTest UI 測試時,可能會發生下列錯誤。

XCTEST_UI_TEST_PACKAGE_UNZIP_FAILED

如果您看到下列訊息,請依照以下步驟修復問題。

We could not open your test IPA file. Please verify that the file is valid and try again.

請確認您可以正確解壓縮應用程式套件。在下列範例中,套件的名稱為 swift-sample-UI.ipa

  1. 將您的測試套件複製到工作目錄,然後執行下列命令:

    $ unzip swift-sample-UI.ipa
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    有效的 iOS 應用程式套件應產生如下輸出:

    . `-- Payload (directory) `-- swift-sampleUITests-Runner.app (directory) |-- Info.plist |-- Plugins (directory) | `swift-sampleUITests.xctest (directory) | |-- Info.plist | `-- (any other files) `-- (any other files)

    如需詳細資訊,請參閱將適用於 iOS 的 XCTest UI 與 Device Farm 整合

XCTEST_UI_TEST_PACKAGE_PAYLOAD_DIR_MISSING

如果您看到下列訊息,請依照以下步驟修復問題。

We could not find the Payload directory inside your test package. Please unzip your test package, verify that the Payload directory is inside the package, and try again.

在下列範例中,套件的名稱為 swift-sample-UI.ipa

  1. 將您的測試套件複製到工作目錄,然後執行下列命令:

    $ unzip swift-sample-UI.ipa
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    如果 XCTest UI 套件是有效的,您可以在工作目錄中找到承載目錄。

    . `-- Payload (directory) `-- swift-sampleUITests-Runner.app (directory) |-- Info.plist |-- Plugins (directory) | `swift-sampleUITests.xctest (directory) | |-- Info.plist | `-- (any other files) `-- (any other files)

    如需詳細資訊,請參閱將適用於 iOS 的 XCTest UI 與 Device Farm 整合

XCTEST_UI_TEST_PACKAGE_APP_DIR_MISSING

如果您看到下列訊息,請依照以下步驟修復問題。

We could not find the .app directory inside the Payload directory. Please unzip your test package and then open the Payload directory, verify that the .app directory is inside the directory, and try again.

在下列範例中,套件的名稱為 swift-sample-UI.ipa

  1. 將您的測試套件複製到工作目錄,然後執行下列命令:

    $ unzip swift-sample-UI.ipa
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    如果 XCTest UI 套件有效,您可以在承載目錄內的範例中找到 .app 目錄,例如 swift-sampleUITests-Runner.app。

    . `-- Payload (directory) `-- swift-sampleUITests-Runner.app (directory) |-- Info.plist |-- Plugins (directory) | `swift-sampleUITests.xctest (directory) | |-- Info.plist | `-- (any other files) `-- (any other files)

    如需詳細資訊,請參閱將適用於 iOS 的 XCTest UI 與 Device Farm 整合

XCTEST_UI_TEST_PACKAGE_PLUGINS_DIR_MISSING

如果您看到下列訊息,請依照以下步驟修復問題。

We could not find the Plugins directory inside the .app directory. Please unzip your test package and then open the .app directory, verify that the Plugins directory is inside the directory, and try again.

在下列範例中,套件的名稱為 swift-sample-UI.ipa

  1. 將您的測試套件複製到工作目錄,然後執行下列命令:

    $ unzip swift-sample-UI.ipa
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    如果 XCTest UI 套件有效,您會在 .app 目錄中找到外掛程式目錄。在範例中,目錄的名稱為 swift-sampleUITests-Runner.app

    . `-- Payload (directory) `-- swift-sampleUITests-Runner.app (directory) |-- Info.plist |-- Plugins (directory) | `swift-sampleUITests.xctest (directory) | |-- Info.plist | `-- (any other files) `-- (any other files)

    如需詳細資訊,請參閱將適用於 iOS 的 XCTest UI 與 Device Farm 整合

XCTEST_UI_TEST_PACKAGE_XCTEST_DIR_MISSING_IN_PLUGINS_DIR

如果您看到下列訊息,請依照以下步驟修復問題。

We could not find the .xctest directory inside the plugins directory. Please unzip your test package and then open the plugins directory, verify that the .xctest directory is inside the directory, and try again.

在下列範例中,套件的名稱為 swift-sample-UI.ipa

  1. 將您的測試套件複製到工作目錄,然後執行下列命令:

    $ unzip swift-sample-UI.ipa
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    如果 XCTest UI 套件有效,您會在外掛程式目錄中找到 .xctest 目錄。在範例中,目錄的名稱為 swift-sampleUITests.xctest

    . `-- Payload (directory) `-- swift-sampleUITests-Runner.app (directory) |-- Info.plist |-- Plugins (directory) | `swift-sampleUITests.xctest (directory) | |-- Info.plist | `-- (any other files) `-- (any other files)

    如需詳細資訊,請參閱將適用於 iOS 的 XCTest UI 與 Device Farm 整合

XCTEST_UI_TEST_PACKAGE_PLIST_FILE_MISSING

如果您看到下列訊息,請依照以下步驟修復問題。

We could not find the Info.plist file inside the .app directory. Please unzip your test package and then open the .app directory, verify that the Info.plist file is inside the directory, and try again.

在下列範例中,套件的名稱為 swift-sample-UI.ipa

  1. 將您的測試套件複製到工作目錄,然後執行下列命令:

    $ unzip swift-sample-UI.ipa
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    如果 XCTest UI 套件有效,您可以在 .app 目錄中找到 Info.plist 檔案。在以下範例中,目錄的名稱為 swift-sampleUITests-Runner.app

    . `-- Payload (directory) `-- swift-sampleUITests-Runner.app (directory) |-- Info.plist |-- Plugins (directory) | `swift-sampleUITests.xctest (directory) | |-- Info.plist | `-- (any other files) `-- (any other files)

    如需詳細資訊,請參閱將適用於 iOS 的 XCTest UI 與 Device Farm 整合

XCTEST_UI_TEST_PACKAGE_PLIST_FILE_MISSING_IN_XCTEST_DIR

如果您看到下列訊息,請依照以下步驟修復問題。

We could not find the Info.plist file inside the .xctest directory. Please unzip your test package and then open the .xctest directory, verify that the Info.plist file is inside the directory, and try again.

在下列範例中,套件的名稱為 swift-sample-UI.ipa

  1. 將您的測試套件複製到工作目錄,然後執行下列命令:

    $ unzip swift-sample-UI.ipa
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    如果 XCTest UI 套件有效,您會在 .xctest 目錄中找到 Info.plist 檔案。在以下範例中,目錄的名稱為 swift-sampleUITests.xctest

    . `-- Payload (directory) `-- swift-sampleUITests-Runner.app (directory) |-- Info.plist |-- Plugins (directory) | `swift-sampleUITests.xctest (directory) | |-- Info.plist | `-- (any other files) `-- (any other files)

    如需詳細資訊,請參閱將適用於 iOS 的 XCTest UI 與 Device Farm 整合

XCTEST_UI_TEST_PACKAGE_CPU_ARCHITECTURE_VALUE_MISSING

如果您看到下列訊息,請依照以下步驟修復問題。

We could not the CPU architecture value in the Info.plist file. Please unzip your test package and then open the Info.plist file inside the .app directory, verify that the key "UIRequiredDeviceCapabilities" is specified, and try again.

在下列範例中,套件的名稱為 swift-sample-UI.ipa

  1. 將您的測試套件複製到工作目錄,然後執行下列命令:

    $ unzip swift-sample-UI.ipa
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    您應該會在範例中的 .app 目錄中找到 Info.plist 檔案,例如 swift-sampleUITests-Runner.app

    . `-- Payload (directory) `-- swift-sampleUITests-Runner.app (directory) |-- Info.plist |-- Plugins (directory) | `swift-sampleUITests.xctest (directory) | |-- Info.plist | `-- (any other files) `-- (any other files)
  3. 若要找到 CPU 架構值,您可以使用 Xcode 或 Python 開啟 Info.plist。

    若您是使用 Python,則可透過執行下列命令安裝 biplist 模組:

    $ pip install biplist
  4. 接著,開啟 Python 並執行下列命令:

    import biplist info_plist = biplist.readPlist('Payload/swift-sampleUITests-Runner.app/Info.plist') print info_plist['UIRequiredDeviceCapabilities']

    有效的 XCtest UI 套件應產生輸出如下:

    ['armv7']

    如需詳細資訊,請參閱將適用於 iOS 的 XCTest UI 與 Device Farm 整合

XCTEST_UI_TEST_PACKAGE_PLATFORM_VALUE_MISSING

如果您看到下列訊息,請依照以下步驟修復問題。

We could not find the platform value in the Info.plist. Please unzip your test package and then open the Info.plist file inside the .app directory, verify that the key "CFBundleSupportedPlatforms" is specified, and try again.

在下列範例中,套件的名稱為 swift-sample-UI.ipa

  1. 將您的測試套件複製到工作目錄,然後執行下列命令:

    $ unzip swift-sample-UI.ipa
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    您應該會在範例中的 .app 目錄中找到 Info.plist 檔案,例如 swift-sampleUITests-Runner.app

    . `-- Payload (directory) `-- swift-sampleUITests-Runner.app (directory) |-- Info.plist |-- Plugins (directory) | `swift-sampleUITests.xctest (directory) | |-- Info.plist | `-- (any other files) `-- (any other files)
  3. 若要找到平台架構值,您可以使用 Xcode 或 Python 開啟 Info.plist。

    若您是使用 Python,則可透過執行下列命令安裝 biplist 模組:

    $ pip install biplist
  4. 接著,開啟 Python 並執行下列命令:

    import biplist info_plist = biplist.readPlist('Payload/swift-sampleUITests-Runner.app/Info.plist') print info_plist['CFBundleSupportedPlatforms']

    有效的 XCtest UI 套件應產生輸出如下:

    ['iPhoneOS']

    如需詳細資訊,請參閱將適用於 iOS 的 XCTest UI 與 Device Farm 整合

XCTEST_UI_TEST_PACKAGE_WRONG_PLATFORM_DEVICE_VALUE

如果您看到下列訊息,請依照以下步驟修復問題。

We found the platform device value was wrong in the Info.plist file. Please unzip your test package and then open the Info.plist file inside the .app directory, verify that the value of the key "CFBundleSupportedPlatforms" does not contain the keyword "simulator", and try again.

在下列範例中,套件的名稱為 swift-sample-UI.ipa

  1. 將您的測試套件複製到工作目錄,然後執行下列命令:

    $ unzip swift-sample-UI.ipa
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    您應該會在範例中的 .app 目錄中找到 Info.plist 檔案,例如 swift-sampleUITests-Runner.app

    . `-- Payload (directory) `-- swift-sampleUITests-Runner.app (directory) |-- Info.plist |-- Plugins (directory) | `swift-sampleUITests.xctest (directory) | |-- Info.plist | `-- (any other files) `-- (any other files)
  3. 若要找到平台架構值,您可以使用 Xcode 或 Python 開啟 Info.plist。

    若您是使用 Python,則可透過執行下列命令安裝 biplist 模組:

    $ pip install biplist
  4. 接著,開啟 Python 並執行下列命令:

    import biplist info_plist = biplist.readPlist('Payload/swift-sampleUITests-Runner.app/Info.plist') print info_plist['CFBundleSupportedPlatforms']

    有效的 XCtest UI 套件應產生輸出如下:

    ['iPhoneOS']

    如果 XCTest UI 套件是有效的,值應不包含關鍵字 simulator

    如需詳細資訊,請參閱將適用於 iOS 的 XCTest UI 與 Device Farm 整合

XCTEST_UI_TEST_PACKAGE_FORM_FACTOR_VALUE_MISSING

如果您看到下列訊息,請依照以下步驟修復問題。

We could not the form factor value in the Info.plist. Please unzip your test package and then open the Info.plist file inside the .app directory, verify that the key "UIDeviceFamily" is specified, and try again.

在下列範例中,套件的名稱為 swift-sample-UI.ipa

  1. 將您的測試套件複製到工作目錄,然後執行下列命令:

    $ unzip swift-sample-UI.ipa
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    您應該會在範例中的 .app 目錄中找到 Info.plist 檔案,例如 swift-sampleUITests-Runner.app

    . `-- Payload (directory) `-- swift-sampleUITests-Runner.app (directory) |-- Info.plist |-- Plugins (directory) | `swift-sampleUITests.xctest (directory) | |-- Info.plist | `-- (any other files) `-- (any other files)
  3. 若要找到表單係數值,您可以使用 Xcode 或 Python 開啟 Info.plist。

    若您是使用 Python,則可透過執行下列命令安裝 biplist 模組:

    $ pip install biplist
  4. 接著,開啟 Python 並執行下列命令:

    import biplist info_plist = biplist.readPlist('Payload/swift-sampleUITests-Runner.app/Info.plist') print info_plist['UIDeviceFamily']

    有效的 XCtest UI 套件應產生輸出如下:

    [1, 2]

    如需詳細資訊,請參閱將適用於 iOS 的 XCTest UI 與 Device Farm 整合

XCTEST_UI_TEST_PACKAGE_PACKAGE_NAME_VALUE_MISSING

如果您看到下列訊息,請依照以下步驟修復問題。

We could not find the package name value in the Info.plist file. Please unzip your test package and then open the Info.plist file inside the .app directory, verify that the key "CFBundleIdentifier" is specified, and try again.

在下列範例中,套件的名稱為 swift-sample-UI.ipa

  1. 將您的測試套件複製到工作目錄,然後執行下列命令:

    $ unzip swift-sample-UI.ipa
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    您應該會在範例中的 .app 目錄中找到 Info.plist 檔案,例如 swift-sampleUITests-Runner.app

    . `-- Payload (directory) `-- swift-sampleUITests-Runner.app (directory) |-- Info.plist |-- Plugins (directory) | `swift-sampleUITests.xctest (directory) | |-- Info.plist | `-- (any other files) `-- (any other files)
  3. 若要找到套件名稱值,您可以使用 Xcode 或 Python 開啟 Info.plist。

    若您是使用 Python,則可透過執行下列命令安裝 biplist 模組:

    $ pip install biplist
  4. 接著,開啟 Python 並執行下列命令:

    import biplist info_plist = biplist.readPlist('Payload/swift-sampleUITests-Runner.app/Info.plist') print info_plist['CFBundleIdentifier']

    有效的 XCtest UI 套件應產生輸出如下:

    com.apple.test.swift-sampleUITests-Runner

    如需詳細資訊,請參閱將適用於 iOS 的 XCTest UI 與 Device Farm 整合

XCTEST_UI_TEST_PACKAGE_EXECUTABLE_VALUE_MISSING

如果您看到下列訊息,請依照以下步驟修復問題。

We could not find the executable value in the Info.plist file. Please unzip your test package and then open the Info.plist file inside the .app directory, verify that the key "CFBundleExecutable" is specified, and try again.

在下列範例中,套件的名稱為 swift-sample-UI.ipa

  1. 將您的測試套件複製到工作目錄,然後執行下列命令:

    $ unzip swift-sample-UI.ipa
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    您應該會在範例中的 .app 目錄中找到 Info.plist 檔案,例如 swift-sampleUITests-Runner.app

    . `-- Payload (directory) `-- swift-sampleUITests-Runner.app (directory) |-- Info.plist |-- Plugins (directory) | `swift-sampleUITests.xctest (directory) | |-- Info.plist | `-- (any other files) `-- (any other files)
  3. 若要找到可執行的值,您可以使用 Xcode 或 Python 開啟 Info.plist。

    若您是使用 Python,則可透過執行下列命令安裝 biplist 模組:

    $ pip install biplist
  4. 接著,開啟 Python 並執行下列命令:

    import biplist info_plist = biplist.readPlist('Payload/swift-sampleUITests-Runner.app/Info.plist') print info_plist['CFBundleExecutable']

    有效的 XCtest UI 套件應產生輸出如下:

    XCTRunner

    如需詳細資訊,請參閱將適用於 iOS 的 XCTest UI 與 Device Farm 整合

XCTEST_UI_TEST_PACKAGE_TEST_PACKAGE_NAME_VALUE_MISSING

如果您看到下列訊息,請依照以下步驟修復問題。

We could not find the package name value in the Info.plist file inside the .xctest directory. Please unzip your test package and then open the Info.plist file inside the .xctest directory, verify that the key "CFBundleIdentifier" is specified, and try again.

在下列範例中,套件的名稱為 swift-sample-UI.ipa

  1. 將您的測試套件複製到工作目錄,然後執行下列命令:

    $ unzip swift-sample-UI.ipa
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    您應該會在範例中的 .app 目錄中找到 Info.plist 檔案,例如 swift-sampleUITests-Runner.app

    . `-- Payload (directory) `-- swift-sampleUITests-Runner.app (directory) |-- Info.plist |-- Plugins (directory) | `swift-sampleUITests.xctest (directory) | |-- Info.plist | `-- (any other files) `-- (any other files)
  3. 若要找到套件名稱值,您可以使用 Xcode 或 Python 開啟 Info.plist。

    若您是使用 Python,則可透過執行下列命令安裝 biplist 模組:

    $ pip install biplist
  4. 接著,開啟 Python 並執行下列命令:

    import biplist info_plist = biplist.readPlist('Payload/swift-sampleUITests-Runner.app/Plugins/swift-sampleUITests.xctest/Info.plist') print info_plist['CFBundleIdentifier']

    有效的 XCtest UI 套件應產生輸出如下:

    com.amazon.swift-sampleUITests

    如需詳細資訊,請參閱將適用於 iOS 的 XCTest UI 與 Device Farm 整合

XCTEST_UI_TEST_PACKAGE_TEST_EXECUTABLE_VALUE_MISSING

如果您看到下列訊息,請依照以下步驟修復問題。

We could not find the executable value in the Info.plist file inside the .xctest directory. Please unzip your test package and then open the Info.plist file inside the .xctest directory, verify that the key "CFBundleExecutable" is specified, and try again.

在下列範例中,套件的名稱為 swift-sample-UI.ipa

  1. 將您的測試套件複製到工作目錄,然後執行下列命令:

    $ unzip swift-sample-UI.ipa
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    您應該會在範例中的 .app 目錄中找到 Info.plist 檔案,例如 swift-sampleUITests-Runner.app

    . `-- Payload (directory) `-- swift-sampleUITests-Runner.app (directory) |-- Info.plist |-- Plugins (directory) | `swift-sampleUITests.xctest (directory) | |-- Info.plist | `-- (any other files) `-- (any other files)
  3. 若要找到可執行的值,您可以使用 Xcode 或 Python 開啟 Info.plist。

    若您是使用 Python,則可透過執行下列命令安裝 biplist 模組:

    $ pip install biplist
  4. 接著,開啟 Python 並執行下列命令:

    import biplist info_plist = biplist.readPlist('Payload/swift-sampleUITests-Runner.app/Plugins/swift-sampleUITests.xctest/Info.plist') print info_plist['CFBundleExecutable']

    有效的 XCtest UI 套件應產生輸出如下:

    swift-sampleUITests

    如需詳細資訊,請參閱將適用於 iOS 的 XCTest UI 與 Device Farm 整合

XCTEST_UI_TEST_PACKAGE_MULTIPLE_APP_DIRS

如果您看到下列訊息,請依照以下步驟修復問題。

We found multiple .app directories inside your test package. Please unzip your test package, verify that only a single .app directory is present inside the package, then try again.

  1. 將您的測試套件複製到工作目錄,然後執行下列命令:

    $ unzip swift-sample-UI.zip
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    如果 XCTest UI 套件有效,您應該只會在 .zip 測試套件swift-sampleUITests-Runner.app中找到範例中的單一.app目錄。

    . `--swift-sample-UI.zip--(directory) `-- swift-sampleUITests-Runner.app (directory) |-- Info.plist |-- Plugins (directory) | `swift-sampleUITests.xctest (directory) | |-- Info.plist | `-- (any other files) `-- (any other files) `-- (any other files)

    如需詳細資訊,請參閱將適用於 iOS 的 XCTest UI 與 Device Farm 整合

XCTEST_UI_TEST_PACKAGE_MULTIPLE_IPA_DIRS

如果您看到下列訊息,請依照以下步驟修復問題。

We found multiple .ipa directories inside your test package. Please unzip your test package, verify that only a single .ipa directory is present inside the package, then try again.

  1. 將您的測試套件複製到工作目錄,然後執行下列命令:

    $ unzip swift-sample-UI.zip
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    如果 XCTest UI 套件有效,您應該只會在 .zip 測試套件sampleUITests.ipa中找到範例中的單一.ipa目錄。

    . `--swift-sample-UI.zip--(directory) `-- sampleUITests.ipa (directory) `-- Payload (directory) `-- swift-sampleUITests-Runner.app (directory) `-- (any other files)

    如需詳細資訊,請參閱將適用於 iOS 的 XCTest UI 與 Device Farm 整合

XCTEST_UI_TEST_PACKAGE_BOTH_APP_AND_IPA_DIR_PRESENT

如果您看到下列訊息,請依照以下步驟修復問題。

We found both .app and .ipa files inside your test package. Please unzip your test package, verify that only a single .app or .ipa file is present inside the package, then try again.

  1. 將您的測試套件複製到工作目錄,然後執行下列命令:

    $ unzip swift-sample-UI.zip
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    如果 XCTest UI 套件有效,您應該會在 .zip 測試套件swift-sampleUITests-Runner.app的範例中找到.ipa類似 sampleUITests.ipa或類似 的.app目錄。您可以在 的文件中參考有效 XCTEST_UI 測試套件的範例將適用於 iOS 的 XCTest UI 與 Device Farm 整合

    . `--swift-sample-UI.zip--(directory) `-- sampleUITests.ipa (directory) `-- Payload (directory) `-- swift-sampleUITests-Runner.app (directory) `-- (any other files)

    . `--swift-sample-UI.zip--(directory) `-- swift-sampleUITests-Runner.app (directory) |-- Info.plist |-- Plugins (directory) `-- (any other files) `-- (any other files)

    如需詳細資訊,請參閱將適用於 iOS 的 XCTest UI 與 Device Farm 整合

XCTEST_UI_TEST_PACKAGE_PAYLOAD_DIR_PRESENT_IN_ZIP

如果您看到下列訊息,請依照以下步驟修復問題。

We found a Payload directory inside your .zip test package. Please unzip your test package, ensure that a Payload directory is not present in the package, then try again.

  1. 將您的測試套件複製到工作目錄,然後執行下列命令:

    $ unzip swift-sample-UI.zip
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    如果 XCTest UI 套件有效,則不應在測試套件中找到承載目錄。

    . `--swift-sample-UI.zip--(directory) `-- swift-sampleUITests-Runner.app (directory) |-- Info.plist |-- Plugins (directory) `-- (any other files) `-- Payload (directory) [This directory should not be present] |-- (any other files) `-- (any other files)

    如需詳細資訊,請參閱將適用於 iOS 的 XCTest UI 與 Device Farm 整合

測試洞見

當您選擇加入測試洞見時,Device Farm 會為您的執行及其下的每個任務產生摘要報告。如果服務無法產生報告,洞察報告狀態為 SKIPPEDERRORED,報告訊息會說明原因。產生 XCTest UI 測試的洞見時,可能會發生下列訊息。

任務未執行至完成

Unable to generate test insights because the job was status.

任務以非成功狀態結束 (狀態STOPPED、 或 SKIPPED)ERRORED,因此沒有摘要結果。結束為失敗狀態的執行仍會收到洞見。

若要解決此問題,請調查任務未執行到完成的原因。在許多情況下,任務本身message的欄位可能會解釋任務未完成的原因。

結果不包含任何測試案例

Test insights could not be generated. The xcresult_summary.json file was parsed successfully but contained no test cases.

成功剖析結果成品,但包含零個測試案例。

若要解決此問題,請確認您的測試套件至少包含一個測試案例,且結果正確存放在 下$DEVICEFARM_LOG_DIR

測試輸出超過支援的大小上限

Unable to generate test insights: test output "xcresult bundle" exceeds the maximum supported size of 1GB.

xcresult 套件大於 1 GB。

若要解決此問題,請修剪日誌或附件,將 xcresult 套件大小縮小到 1 GB 以下。

找不到 xcresult 套件

Unable to generate test insights. The xctestresult bundle file (.xcresult) was not found in the output artifacts.

Device Farm 找不到此任務的.xcresult套件,因此沒有要摘要的結果。

Device Farm 會在 下的任何位置尋找套件$DEVICEFARM_DERIVED_DATA_PATH。預設 XCTest UI 測試規格會自動產生,因此此訊息通常表示自訂測試規格不會將結果寫入該位置。

若要確認是否產生套件,請下載任務的客戶成品,並尋找衍生資料資料夾下的.xcresult目錄。

無法處理 xcresult 測試結果

Test insights could not be generated because of an error while processing the .xcresult test results.

Device Farm 找到 .xcresult套件,但無法從中讀取測試結果。

若要解決此問題,請確定您的測試執行會產生有效的.xcresult套件。確認您的測試規格未在執行完成之前修改、截斷或封存套件,且xcodebuild命令已完成,而不是被逾時中斷。