REST Resource: projects.histories.executions.environments

資源:環境

「環境」代表父項執行中,使用同一組維度 (模型、版本、語言代碼和方向) 設定的一組測試執行作業 (步驟)。之所以多次執行這類作業,主要是因為有資料分割 (分割測試套件以便在各個裝置上平行執行) 及重新執行 (執行多次測試來檢查不同結果) 等功能。

JSON 表示法
{
  "projectId": string,
  "historyId": string,
  "executionId": string,
  "environmentId": string,
  "dimensionValue": {
    string: string,
    ...
  },
  "displayName": string,
  "creationTime": {
    object (Timestamp)
  },
  "completionTime": {
    object (Timestamp)
  },
  "shardSummaries": [
    {
      object (ShardSummary)
    }
  ],
  "environmentResult": {
    object (MergedResult)
  },
  "resultsStorage": {
    object (ResultsStorage)
  }
}
欄位
projectId

string

僅供輸出。專案 ID。

historyId

string

僅供輸出。記錄 ID。

executionId

string

僅供輸出。執行作業 ID。

environmentId

string

僅供輸出。環境 ID。

dimensionValue

map (key: string, value: string)

用於說明環境的維度值。維度值一律由「模型」、「版本」、「語言代碼」和「方向」組成。

  • 回應:一律設定
  • 在建立要求中:一律設定
  • 在更新要求中:永不設定

包含 "key": value 組合清單的物件。範例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

displayName

string

使用者可理解的簡短名稱,會顯示在 UI 中。最多 100 個字元。例如:Nexus 5、API 27。

creationTime

object (Timestamp)

僅供輸出。環境的建立時間。

completionTime

object (Timestamp)

僅供輸出。環境狀態設為完成的時間。

當狀態轉換為 COMPLETE 時,系統會自動設定這個值。

shardSummaries[]

object (ShardSummary)

僅供輸出。資料分割的摘要。

除非已在 TestExecutionService 中啟用資料分割功能,否則只會顯示一個資料分割。

environmentResult

object (MergedResult)

環境的合併結果。

resultsStorage

object (ResultsStorage)

輸出檔案儲存在使用者值區中的位置。

ShardSummary

環境中資料分割的結果摘要。

JSON 表示法
{
  "runs": [
    {
      object (StepSummary)
    }
  ],
  "shardResult": {
    object (MergedResult)
  }
}
欄位
runs[]

object (StepSummary)

資料分割的步驟摘要。

從 TestExecutionService 啟用 flaky_test_attempts 之後,即可有多個執行作業 (步驟)。系統就會按照 multistepNumber 排序執行作業。

shardResult

object (MergedResult)

資料分割的合併結果。

步驟摘要

這個類型沒有任何欄位。

此執行作業中 1 步的輕量摘要。

合併結果

合併環境的測試結果。

如果環境只有一個步驟 (沒有重新執行或資料分割),則合併的結果會與步驟結果相同。如果環境有多個資料分割且/或重新執行,系統會將屬於相同環境的資料分割和重新執行結果合併為一個環境結果。

JSON 表示法
{
  "state": enum (State),
  "outcome": {
    object (Outcome)
  },
  "testSuiteOverviews": [
    {
      object (TestSuiteOverview)
    }
  ]
}
欄位
state

enum (State)

資源狀態

outcome

object (Outcome)

資源結果

testSuiteOverviews[]

object (TestSuiteOverview)

在這個環境中執行的各個測試套件的綜合結果和匯總結果。

合併:如果套件中的測試案例是以不同的步驟執行 (資料分割),系統會將結果在單一總覽中加回。(例如,如果 shard1 中有 2 次失敗,shard2 失敗了 1 次,比總覽失敗計數 = 3)。

Rollup:如果同一個套件的測試案例多次執行 (不穩定的測試),系統會合併結果 (舉例來說,如果 testcase1.run1 失敗,則 testcase1.run2 會通過測試,而 testcase2.run1 和 testcase2.run2 會失敗,那麼總覽 flakyCount = 1,而失敗計數 = 1)。

結果儲存空間

測試結果的儲存空間。

JSON 表示法
{
  "resultsStoragePath": {
    object (FileReference)
  },
  "xunitXmlFile": {
    object (FileReference)
  }
}
欄位
resultsStoragePath

object (FileReference)

測試結果的根目錄。

xunitXmlFile

object (FileReference)

Xunit XML 檔案的路徑。

方法

get

取得環境。

list

列出特定執行作業的環境。