

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

# 將 Device Farm 與適用於 iOS 的 XCTest 整合
<a name="test-types-ios-xctest"></a>

使用 Device Farm，您可以使用 XCTest 架構在實際裝置上測試您的應用程式。如需 XCTest 的詳細資訊，請參閱*使用 Xcode 在測試*中[測試基本概念](https://developer.apple.com/library/ios/documentation/DeveloperTools/Conceptual/testing_with_xcode/chapters/03-testing_basics.html)。

若要執行測試，請為測試執行建立套件，並將這些套件上傳至 Device Farm。

如需在 Device Farm 中測試的詳細資訊，請參閱 [AWS Device Farm 中的測試架構和內建測試](test-types.md)。

**Topics**
+ [為您的 XCTest 執行建立套件](#test-types-ios-xctest-create-packages)
+ [將 XCTest 執行的套件上傳至 Device Farm](#test-types-ios-xctest-upload)

## 為您的 XCTest 執行建立套件
<a name="test-types-ios-xctest-create-packages"></a>

若要使用 XCTest 架構測試您的應用程式，Device Farm 需要下列項目：
+ 以 `.ipa` 檔案提供的應用程式套件。
+ 以 `.zip` 檔案提供的 XCTest 套件。

您使用 Xcode 產生的組建輸出來建立這些套件。請完成下列步驟來建立套件，以便您可以將它們上傳到 Device Farm。

**為應用程式產生組建輸出**

1. 在 Xcode 中打开应用程序项目。

1. 在 Xcode 工具列的配置下拉式功能表中，選擇 **Generic iOS Device (一般 iOS 裝置)** 做為目的地。

1. 在 **Product (產品)** 功能表中，選擇 **Build For (建置對象)**，然後選擇 **Testing (測試)**。

**建立應用程式套件**

1. 在 Xcode 的專案導覽器中，在 **Products (產品)** 下方開啟名為 `{{app-project-name}}.app` 之檔案的內容功能表。然後，選擇 **Show in Finder (在尋找工具中顯示)**。Finder 會開啟名為 `Debug-iphoneos` 的資料夾，其中包含 Xcode 為您的測試組建產生的輸出。此資料夾包含您的 `.app` 檔案。

1. 在 Finder 中，建立一個新資料夾並將其命名為 `Payload`.

1. 複製 `{{app-project-name}}.app` 檔案，並將其貼至 `Payload` 資料夾。​

1. 開啟 `Payload` 資料夾的內容功能表，然後選擇 **Compress "Payload" (壓縮 "Payload")**。名為 `Payload.zip` 的檔案已建立。

1. 將 `Payload.zip` 的檔案名稱和副檔名變更為 `{{app-project-name}}.ipa`。

   在後續步驟中，您會將此檔案提供給 Device Farm。為了能更容易找到此檔案，您可以將它移到另一個位置，例如桌面。

1. 或者，您也可以刪除 `Payload` 資料夾和其中的 `.app` 檔案。

**建立 XCTest 套件**

1. 在 Finder 的 `Debug-iphoneos` 目錄中，開啟 `{{app-project-name}}.app` 檔案的內容功能表。然後，選擇 **Show Package Contents (顯示套件內容)**。

1. 在套件內容中，開啟 `Plugins` 資料夾。此資料夾包含名為 `{{app-project-name}}.xctest` 的檔案。

1. 開啟此檔案的內容選單，然後選擇**壓縮「`{{app-project-name}}.xctest`」**。名為 `{{app-project-name}}.xctest.zip` 的檔案已建立。

   在後續步驟中，您會將此檔案提供給 Device Farm。為了能更容易找到此檔案，您可以將它移到另一個位置，例如桌面。

## 將 XCTest 執行的套件上傳至 Device Farm
<a name="test-types-ios-xctest-upload"></a>

使用 Device Farm 主控台為您的測試上傳套件。

1. 登入 Device Farm 主控台，網址為 https：//[https://console.aws.amazon.com/devicefarm](https://console.aws.amazon.com/devicefarm)。

1. 如果您還沒有專案，請加以建立。如需建立專案的步驟，請參閱[在 AWS Device Farm 中建立專案](how-to-create-project.md)。

   否則，在 Device Farm 導覽面板上，選擇**行動裝置測試**，然後選擇**專案**。

1. 選擇您要用來執行測試的專案。

1. 選擇**建立執行**。

1. 在**執行設定**下，於**執行類型**區段中，選擇 **iOS 應用程式**。

1. 在**選取應用程式**下，於**應用程式選取選項**區段中，選取**上傳自己的應用程式**。然後，選取**上傳應用程式**下的**選擇檔案**。

1. 瀏覽至您應用程式的 `.ipa` 檔案並上傳。
**注意**  
您的 `.ipa` 套件必須是專為測試而建置。

1. 在**設定測試**下，於**選取測試架構**區段中，選擇 **XCTest**。然後，選取**上傳應用程式**下的**選擇檔案**。

1. 瀏覽到其中包含用於您應用程式之 XCTest 套件的 `.zip` 檔案，並將其上傳。

1. 完成專案建立程序的其餘步驟。您將會選擇您想要進行測試的裝置，並指定裝置狀態。

1. 選擇**建立執行**。Device Farm 會執行您的測試，並在主控台中顯示結果。