测试

供 Starlark 访问测试基础架构的辅助方法。

成员

analysis_test

None testing.analysis_test(name, implementation, attrs=None, fragments=[], toolchains=[], attr_values={})

实验性。此 API 处于实验阶段,随时可能更改。请勿依赖它。您可以在实验阶段通过设置 --+experimental_analysis_test_call
创建新的分析测试目标来启用对比测试。

测试的传递依赖项数量有限。此限制由 --analysis_testing_deps_limit 标志控制。

参数

参数 说明
name 必需
目标的名称。它应该是 Starlark 标识符,与格式“[A-Za-z_][A-Za-z0-9_]*”匹配。
implementation 必需
用于实现此分析测试的 Starlark 函数。它必须且只能有一个参数:ctx。系统会在分析阶段调用该函数。它可以访问由 attrs 声明并通过 attr_values 填充的属性。实现函数不能注册操作。相反,它必须通过提供 AnalysisTestResultInfo 来注册通过/失败结果。
attrs dict; or None; 默认 = 无
声明属性的字典。请参阅规则调用。属性可以使用通过 analysis_test_transition 定义的配置转换。
fragments sequence of strings; 默认值 = []
可用于分析测试实现的配置 fragment 的列表。
toolchains sequence; 默认值 = []
测试所需的工具链集。请参阅规则调用。
attr_values dict of strings; default = {}
要传递给实现的属性值的字典。

ExecutionInfo

ExecutionInfo testing.ExecutionInfo(requirements={}, exec_group='test')

testing.ExecutionInfo 提供方密钥/构造函数

测试环境

RunEnvironmentInfo testing.TestEnvironment(environment, inherited_environment=[])

已弃用:请改用 RunEnvironmentInfo。创建新的测试环境提供程序。使用此提供程序可指定在测试执行期间可用的额外环境变量。

参数

参数 说明
environment 必需
表示环境变量及其值的字符串键和值的映射。这些将在测试执行期间提供。
inherited_environment sequence of strings; 默认值 = []
环境变量的一系列名称。这些变量在测试执行期间可用,其当前值取自 shell 环境。如果 environmentinherited_environment 中都包含某个变量,则从 shell 环境继承的值在设置后优先级更高。