

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

# 在 Device Farm 中下載成品
<a name="artifacts"></a>

Device Farm 會收集執行中每個測試的成品，例如報告、日誌檔案和映像。

您可以下載測試執行期間所建立的成品：

**檔案**  
測試執行期間產生的檔案，包括 Device Farm 報告。如需詳細資訊，請參閱[在 Device Farm 中檢視測試報告](how-to-use-reports.md)。

**日誌**  
測試執行中每次測試的輸出。

**螢幕擷取畫面**  
系統會記錄測試執行中每次測試的螢幕影像。

![\[Workflow diagram showing Project, Run, Job (device), Test suite, and Test stages in AWS 雲端.\]](http://docs.aws.amazon.com/zh_tw/devicefarm/latest/developerguide/images/hierarchy.png)


## 下載成品 （主控台）
<a name="artifacts-console"></a>

1. 在測試執行報告頁面的 **Devices (裝置)** 中，選擇行動裝置。

1. 若要下載檔案，請在 **Files (檔案)** 中選擇。

1. 要下載您測試執行的日誌，請在 **Logs (日誌)** 中選擇 **Download logs (下載日誌)**。

1. 若要下載螢幕擷取畫面，請在 **Screenshots (螢幕擷取畫面)** 中選擇螢幕擷取畫面。

如需在自訂測試環境中下載成品的詳細資訊，請參閱 [在自訂測試環境中下載成品](using-artifacts-custom.md)。

## 下載成品 (AWS CLI)
<a name="artifacts-cli"></a>

您可以使用 AWS CLI 列出您的測試執行成品。

**Topics**
+ [步驟 1：取得您的 Amazon Resource Name (ARN)](#artifacts-cli-step1)
+ [步驟 2：列出您的成品](#artifacts-cli-step2)
+ [步驟 3：下載您的成品](#artifacts-cli-step3)

### 步驟 1：取得您的 Amazon Resource Name (ARN)
<a name="artifacts-cli-step1"></a>

您可以透過執行、工作、測試套件或測試，列出您的成品。您需要對應的 ARN。此資料表顯示每個 AWS CLI 清單命令的輸入 ARN：


| AWS CLI List 命令 | 需要 ARN | 
| --- | --- | 
| list-projects | 此命令會傳回所有專案，而且不需要 ARN。 | 
| list-runs | project | 
| list-jobs | run | 
| list-suites | job | 
| list-tests | suite | 

例如，若要尋找測試 ARN，請在輸入參數使用您的測試套件 ARN 來執行 **list-tests**。

範例：

```
aws devicefarm list-tests –-arn arn:MyTestSuiteARN
```

測試套件中每次測試的回應中皆會包含測試 ARN。

```
{
    "tests": [
        {
            "status": "COMPLETED",
            "name": "Tests.FixturesTest.testExample",
            "created": 1537563725.116,
            "deviceMinutes": {
                "unmetered": 0.0,
                "total": 1.89,
                "metered": 1.89
            },
            "result": "PASSED",
            "message": "testExample passed",
            "arn": "arn:aws:devicefarm:us-west-2:123456789101:test:5e01a8c7-c861-4c0a-b1d5-12345EXAMPLE",
            "counters": {
                "skipped": 0,
                "warned": 0,
                "failed": 0,
                "stopped": 0,
                "passed": 1,
                "errored": 0,
                "total": 1
            }
        }
    ]
}
```

### 步驟 2：列出您的成品
<a name="artifacts-cli-step2"></a>

The AWS CLI [list-artifacts](https://docs.aws.amazon.com/cli/latest/reference/devicefarm/list-artifacts.html) 命令會傳回成品清單，例如檔案、螢幕擷取畫面和日誌。每個成品都會有 URL，因此您可以下載檔案。
+ 呼叫 **list-artifacts** 指定執行、工作、測試套件或測試 ARN。指定檔案、日誌或螢幕快照的類型。

  此範例會傳回個別測試中，每個可供下載成品的 URL：

  ```
  aws devicefarm list-artifacts --arn arn:MyTestARN --type "FILE"
  ```

  每個成品的回應皆包含下載 URL。

  ```
  {
      "artifacts": [
          {
              "url": "https://prod-us-west-2-uploads.s3-us-west-2.amazonaws.com/ExampleURL",
              "extension": "txt",
              "type": "APPIUM_JAVA_OUTPUT",
              "name": "Appium Java Output",
              "arn": "arn:aws:devicefarm:us-west-2:123456789101:artifact:5e01a8c7-c861-4c0a-b1d5-12345EXAMPLE",
          }
      ]
  }
  ```

### 步驟 3：下載您的成品
<a name="artifacts-cli-step3"></a>
+ 使用先前步驟的 URL 下載您的成品。此範例使用 **curl** 來下載 Android Appium Java 輸出檔：

  ```
  curl "https://prod-us-west-2-uploads.s3-us-west-2.amazonaws.com/ExampleURL" > MyArtifactName.txt
  ```

## 下載成品 (API)
<a name="artifacts-api"></a>

Device Farm API [ListArtifacts](https://docs.aws.amazon.com/devicefarm/latest/APIReference/API_ListArtifacts.html) 方法會傳回成品清單，例如檔案、螢幕擷取畫面和日誌。每個成品都會有 URL，因此您可以下載檔案。

# 在自訂測試環境中下載成品
<a name="using-artifacts-custom"></a>

在自訂測試環境中，Device Farm 會收集成品，例如自訂報告、日誌檔案和映像。這些成品可供測試執行中的每個裝置使用。

您可以下載這些在測試執行期間所建立的成品：

**測試規格輸出**  
在測試規格 YAML 檔案中執行命令的輸出。

**客戶成品**  
包含測試執行成品的壓縮檔案。這可在測試規格 YAML 檔案中的 **artifacts: (成品：)** 區段設定。

**測試規格 shell 指令碼**  
從 YAML 檔案建立的中繼 shell 指令碼檔案。因為 shell 指令碼檔案會用於測試執行，所以其也可用於偵錯 YAML 檔案。

**測試規格檔案**  
用於執行測試的 YAML 檔案。

如需詳細資訊，請參閱[在 Device Farm 中下載成品](artifacts.md)。

![\[自訂測試環境中的 Device Farm 階層操作\]](http://docs.aws.amazon.com/zh_tw/devicefarm/latest/developerguide/images/hierarchy.png)
