本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
對 AWS Device Farm 中的 XCTest UI 測試進行故障診斷
下列主題列出上傳 UI XCTest 測試期間發生的錯誤訊息,並建議解決每個錯誤的因應措施。
注意
以下說明以 Linux x86_64 和 Mac 為基礎。
XCTEST_UI_TEST_PACKAGE_UNZIP_FAILED
如果您看到下列訊息,請依照以下步驟修復問題。
警告
我們無法開啟您的測試IPA檔案。請確認檔案是否有效,然後再試一次。
請確認您可以正確解壓縮應用程式套件。在下列範例中,套件的名稱為 swift-sample-UI.ipa。
將您的測試套件複製到工作目錄,然後執行下列命令:
$ unzip swift-sample-UI.ipa
成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:
$ 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
如果您看到下列訊息,請依照以下步驟修復問題。
警告
在測試套件中找不到承載目錄。請解壓縮您的測試套件,確認承載目錄位於套件中,然後再試一次。
在下列範例中,套件的名稱為 swift-sample-UI.ipa。
將您的測試套件複製到工作目錄,然後執行下列命令:
$ unzip swift-sample-UI.ipa
成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:
$ tree .
如果 XCTest UI 套件有效,您會找到
Payload
工作目錄內的目錄。. `--
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
如果您看到下列訊息,請依照以下步驟修復問題。
警告
在承載目錄中找不到 .app 目錄。請解壓縮您的測試套件,開啟承載目錄,確認目錄中有 .app 目錄,然後再試一次。
在下列範例中,套件的名稱為 swift-sample-UI.ipa。
將您的測試套件複製到工作目錄,然後執行下列命令:
$ unzip swift-sample-UI.ipa
成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:
$ tree .
如果 XCTest UI 套件有效,您會找到
.app
目錄,例如swift-sampleUITests-Runner.app
在我們的範例中Payload
目錄。. `-- 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
如果您看到下列訊息,請依照以下步驟修復問題。
警告
在 .app 目錄中找不到外掛程式目錄。請解壓縮您的測試套件,開啟 .app 目錄,確認目錄中有外掛程式目錄,然後再試一次。
在下列範例中,套件的名稱為 swift-sample-UI.ipa。
將您的測試套件複製到工作目錄,然後執行下列命令:
$ unzip swift-sample-UI.ipa
成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:
$ tree .
如果 XCTest UI 套件有效,您會找到
Plugins
中的目錄.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
如果您看到下列訊息,請依照以下步驟修復問題。
警告
在外掛程式目錄中找不到 .xctest 目錄。請解壓縮您的測試套件,開啟外掛程式目錄,確認目錄中有 .xctest 目錄,然後再試一次。
在下列範例中,套件的名稱為 swift-sample-UI.ipa。
將您的測試套件複製到工作目錄,然後執行下列命令:
$ unzip swift-sample-UI.ipa
成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:
$ tree .
如果 XCTest UI 套件有效,您會找到
.xctest
中的目錄Plugins
目錄。在我們的範例中,目錄稱為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
如果您看到下列訊息,請依照以下步驟修復問題。
警告
在 .app 目錄中找不到 Info.plist 檔案。請解壓縮您的測試套件,開啟 .app 目錄,確認目錄中有 Info.plist 檔案,然後再試一次。
在下列範例中,套件的名稱為 swift-sample-UI.ipa。
將您的測試套件複製到工作目錄,然後執行下列命令:
$ unzip swift-sample-UI.ipa
成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:
$ tree .
如果 XCTest UI 套件有效,您會找到
Info.plist
檔案位於.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_PLIST_FILE_MISSING_IN_XCTEST_DIR
如果您看到下列訊息,請依照以下步驟修復問題。
警告
在 .xctest 目錄中找不到 .plist 檔案。請解壓縮您的測試套件,開啟相依性 .xctest 目錄,確認目錄中有 Info.plist 檔案,然後再試一次。
在下列範例中,套件的名稱為 swift-sample-UI.ipa。
將您的測試套件複製到工作目錄,然後執行下列命令:
$ unzip swift-sample-UI.ipa
成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:
$ tree .
如果 XCTest UI 套件有效,您會找到
Info.plist
檔案位於.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_CPU_ARCHITECTURE_VALUE_MISSING
如果您看到下列訊息,請依照以下步驟修復問題。
警告
我們無法在 Info.plist 檔案中建立CPU架構值。請解壓縮測試套件,然後在 .app 目錄中開啟 Info.plist 檔案,確認已指定金鑰 "UIRequiredDeviceCapabilities",然後再試一次。
在下列範例中,套件的名稱為 swift-sample-UI.ipa。
將您的測試套件複製到工作目錄,然後執行下列命令:
$ unzip swift-sample-UI.ipa
成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:
$ tree .
您應該會找到
Info.plist
檔案位於.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)-
若要尋找CPU架構值,您可以使用 Xcode 或 Python 開啟 Info.plist。
若您是使用 Python,則可透過執行下列命令安裝 biplist 模組:
$ pip install biplist
-
接著,開啟 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
如果您看到下列訊息,請依照以下步驟修復問題。
警告
在 Info.plist 中找不到平台值。請解壓縮測試套件,然後在 .app 目錄中開啟 Info.plist 檔案,確認已指定金鑰 "CFBundleSupportedPlatforms",然後再試一次。
在下列範例中,套件的名稱為 swift-sample-UI.ipa。
將您的測試套件複製到工作目錄,然後執行下列命令:
$ unzip swift-sample-UI.ipa
成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:
$ tree .
您應該會找到
Info.plist
檔案位於.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)-
若要找到平台架構值,您可以使用 Xcode 或 Python 開啟 Info.plist。
若您是使用 Python,則可透過執行下列命令安裝 biplist 模組:
$ pip install biplist
-
接著,開啟 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
如果您看到下列訊息,請依照以下步驟修復問題。
警告
Info.plist 檔案中的平台裝置值錯誤。請解壓縮測試套件,然後在 .app 目錄中開啟 Info.plist 檔案,確認索引鍵 "CFBundleSupportedPlatforms" 的值不包含關鍵字 "simulator",然後再試一次。
在下列範例中,套件的名稱為 swift-sample-UI.ipa。
將您的測試套件複製到工作目錄,然後執行下列命令:
$ unzip swift-sample-UI.ipa
成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:
$ tree .
您應該會找到
Info.plist
檔案位於.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)-
若要找到平台架構值,您可以使用 Xcode 或 Python 開啟 Info.plist。
若您是使用 Python,則可透過執行下列命令安裝 biplist 模組:
$ pip install biplist
-
接著,開啟 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
如果您看到下列訊息,請依照以下步驟修復問題。
警告
在 Info.plist 檔案中找不到表單係數值。請解壓縮測試套件,然後在 .app 目錄中開啟 Info.plist 檔案,確認已指定金鑰 "UIDeviceFamily",然後再試一次。
在下列範例中,套件的名稱為 swift-sample-UI.ipa。
將您的測試套件複製到工作目錄,然後執行下列命令:
$ unzip swift-sample-UI.ipa
成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:
$ tree .
您應該會找到
Info.plist
檔案位於.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)-
若要找到表單係數值,您可以使用 Xcode 或 Python 開啟 Info.plist。
若您是使用 Python,則可透過執行下列命令安裝 biplist 模組:
$ pip install biplist
-
接著,開啟 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
如果您看到下列訊息,請依照以下步驟修復問題。
警告
在 Info.plist 檔案中找不到套件名稱值。請解壓縮測試套件,然後在 .app 目錄中開啟 Info.plist 檔案,確認已指定金鑰 "CFBundleIdentifier",然後再試一次。
在下列範例中,套件的名稱為 swift-sample-UI.ipa。
將您的測試套件複製到工作目錄,然後執行下列命令:
$ unzip swift-sample-UI.ipa
成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:
$ tree .
您應該會找到
Info.plist
檔案位於.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)-
若要找到套件名稱值,您可以使用 Xcode 或 Python 開啟 Info.plist。
若您是使用 Python,則可透過執行下列命令安裝 biplist 模組:
$ pip install biplist
-
接著,開啟 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
如果您看到下列訊息,請依照以下步驟修復問題。
警告
在 Info.plist 檔案中找不到可執行的值。請解壓縮測試套件,然後在 .app 目錄中開啟 Info.plist 檔案,確認已指定金鑰 "CFBundleExecutable",然後再試一次。
在下列範例中,套件的名稱為 swift-sample-UI.ipa。
將您的測試套件複製到工作目錄,然後執行下列命令:
$ unzip swift-sample-UI.ipa
成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:
$ tree .
您應該會找到
Info.plist
檔案位於.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)-
若要找到可執行的值,您可以使用 Xcode 或 Python 開啟 Info.plist。
若您是使用 Python,則可透過執行下列命令安裝 biplist 模組:
$ pip install biplist
-
接著,開啟 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
如果您看到下列訊息,請依照以下步驟修復問題。
警告
在 .xctest 目錄的 Info.plist 檔案中找不到套件名稱值。請解壓縮測試套件,然後在 .xctest 目錄中開啟 Info.plist 檔案,確認已指定金鑰 "CFBundleIdentifier",然後再試一次。
在下列範例中,套件的名稱為 swift-sample-UI.ipa。
將您的測試套件複製到工作目錄,然後執行下列命令:
$ unzip swift-sample-UI.ipa
成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:
$ tree .
您應該會找到
Info.plist
檔案位於.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)-
若要找到套件名稱值,您可以使用 Xcode 或 Python 開啟 Info.plist。
若您是使用 Python,則可透過執行下列命令安裝 biplist 模組:
$ pip install biplist
-
接著,開啟 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
如果您看到下列訊息,請依照以下步驟修復問題。
警告
在 .xctest 目錄的 Info.plist 檔案中找不到可執行的值。請解壓縮測試套件,然後在 .xctest 目錄中開啟 Info.plist 檔案,確認已指定金鑰 "CFBundleExecutable",然後再試一次。
在下列範例中,套件的名稱為 swift-sample-UI.ipa。
將您的測試套件複製到工作目錄,然後執行下列命令:
$ unzip swift-sample-UI.ipa
成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:
$ tree .
您應該會找到
Info.plist
檔案位於.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)-
若要找到可執行的值,您可以使用 Xcode 或 Python 開啟 Info.plist。
若您是使用 Python,則可透過執行下列命令安裝 biplist 模組:
$ pip install biplist
-
接著,開啟 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 整合。