目标和动机
日志通常用于诊断和排查系统状态(无论是在生产环境还是测试环境中)。
测试日志的一项实用功能可用于限制测试中的日志严重性。这样一来,测试作者就可以确信,即使测试满足了所有预期,其测试也不会遇到意外的错误情况。经验表明,这是一个非常有用的功能,可检测细微的 bug 和回归问题。
默认情况下,如果测试的日志严重级别高于 WARNING(即日志严重级别为 ERROR 或更高级别),则测试会失败。如需替换此行为,开发者可以设置更高的阈值。例如,如果预期有 ERROR,则开发者会在与测试关联的测试规范中设置 max_severity = "ERROR"。
此功能首次推出时,所有替换项均在一个文件中设置。从那时起,您就可以在定义测试本身的位置设置特定于该测试的替换项。新方法更易于维护。
技术背景
需要具备编辑 BUILD.gn 文件的入门级知识。
如何提供帮助
选择任务
从 max_severity_fuchsia.json 中选择一个条目。例如:
      {
           "max_severity": "FATAL"
           "url": "fuchsia-pkg://fuchsia.com/audio_core_unittests#meta/audio_core_unittests.cm"
      },
执行任务
您将删除此部分,并在上述测试的 build 定义中设置类似的配置。
fuchsia_test_package("audio_core_unittests") {
  test_specs = {
      log_settings = {
        max_severity = "FATAL"
      }
  }
  ...
}
您也可以参阅指南。
请注意,虽然大多数测试都是使用 fuchsia_test_package() 模板定义的,但有些测试是使用其他封装容器模板定义的。通常,封装容器会接受 test_specs 并将其转发到底层 fuchsia_test_package 模板。
完成任务
按 OWNERS 查找审核者,然后合并更改。
示例
- 555759:[日志] 将 intl_services 日志严重级别配置移至测试定义
 - 410049:[blobfs] blobfs 压力测试 v1
 - 436337:[network/tests] 拆分集成测试二进制文件
 - 426214:[isolated-ota] 重构为用于集成测试的库。
 - 440054:[run_test_component] 修剪网络测试许可名单
 
赞助商
如有疑问或需要了解最新状态,请与我们联系: