为什么我的性能测试在基础架构 build 中运行两次?
适用于包含 fuchsia_test_package
和
主机端封装容器,因此测试逻辑最终在
基础架构构建:一次通过主机端封装容器进行,另一次通过不使用
封装容器仅作为 Fuchsia 端测试。
这种情况是不可取的,因为:1) 会浪费基础设施容量,以及 测试软件包有时最终会在异常或缓慢的 build 中运行 例如 ASan、覆盖率、QEMU) 因为运行时间过长
(不过,有时也可能需要这样做,例如,当测试软件包 在“单元测试模式”下运行其测试即默认使用一小段 测试迭代次数,而不是“性能测试模式”)。
之所以会出现这个问题,是因为向集合添加了 fuchsia_test_package
构建依赖项的依赖项通常会导致
构建器以将其作为仅限 Fuchsia 端(目标端)测试运行。
若要解决此问题,建议您将以下内容添加到
BUILD.gn
文件中的 fuchsia_test_package
声明:
# Prevent this test from being run as a target-side test, because it
# is run by a host-side wrapper.
test_specs = {
environments = []
}