Fuchsia 中的主机端 Python 测试通过 fx test、CI 和 CQ 使用 Fuchsia 供应商提供的 Python 解释器 (fuchsia-vendored-python) 执行。
定义主机测试
使用 python_host_test GN 模板
定义测试目标。
测试 .py 文件必须使用标准 Shebang:
#!/usr/bin/env fuchsia-vendored-python
示例 BUILD.gn
import("//build/python/python_host_test.gni")
if (is_host) {
python_host_test("my_script_test") {
main_source = "my_script_test.py"
sources = [ "test_helper.py" ]
libraries = [ "//path/to/library:lib" ]
}
}
group("tests") {
testonly = true
public_deps = [ ":my_script_test($host_toolchain)" ]
}
关键 GN 参数
main_source:(必需)主.py测试入口点的路径。libraries:(可选)测试导入的python_library标签列表。enable_mypy:(可选)启用 MyPy 静态类型检查。默认值为true。
运行测试
使用 fx test 在本地运行测试:
fx test //path/to/my_test:my_script_test