Starlark 用來存取測試基礎架構的輔助方法。
成員
analysis_test
None
testing.analysis_test(name, implementation, attrs={}, fragments=[], toolchains=[], attr_values={})
測試的傳遞依附元件數量有限。限制是由 --analysis_testing_deps_limit
標記控制。
參數
參數 | 說明 |
---|---|
name
|
必要 目標名稱。應為 Starlark 識別碼,符合模式 '[A-Za-z_][A-Za-z0-9_]*'。 |
implementation
|
required Starlark 函式,用於實作此分析測試。且只能有一個參數:ctx。系統會在分析階段呼叫這個函式。它可以存取 attrs 宣告的屬性,並透過 attr_values 填入。實作函式可能不會註冊動作。而是必須透過提供 AnalysisTestResultInfo 註冊通過/失敗結果。
|
attrs
|
dict;
預設為 {} 。 宣告屬性的字典。請參閱 rule 呼叫。屬性可使用透過 analysis_test_transition 定義的設定轉換。 |
fragments
|
字串的序列;預設為 [] 。 可用於實作分析測試的設定片段清單。 |
toolchains
|
sequence;預設為 [] 。測試所需的工具鍊集。請參閱 rule 呼叫。 |
attr_values
|
字串的字典;預設為 {} 。 要傳遞至實作項目的屬性值字典。 |
ExecutionInfo
ExecutionInfo testing.ExecutionInfo(requirements={}, exec_group='test')
TestEnvironment
RunEnvironmentInfo testing.TestEnvironment(environment, inherited_environment=[])
參數
參數 | 說明 |
---|---|
environment
|
required 字串鍵和值的對應,用於代表環境變數及其值。這些值會在測試執行期間提供。 |
inherited_environment
|
字串序列;預設為 [] 。這些變數會在測試執行期間提供,並從殼層環境擷取目前的值。如果 environment 和 inherited_environment 都包含變數,則會優先採用從 Shell 環境繼承的值 (如果已設定的話)。 |