当前位置: 代码迷 >> 综合 >> CheckBox Navigation(二)Understanding Checkbox
  详细解决方案

CheckBox Navigation(二)Understanding Checkbox

热度:96   发布时间:2023-11-17 14:50:49.0

Checkbox

CheckBox Navigation 2

      • Understanding Checkbox
        • 1. Test Command
        • 2. Job Unit
          • ==Note==
        • 3. Test Plan
          • ==Note==
        • 4. Provider
        • 5. Launcher

Understanding Checkbox

checkbox 本身不会测试任何东西。
它使用分组在提供程序中的单元定义来实际运行或做一些事情。

为了更好地理解checkbox 是如何工作的,让我们专注于以下实体之间的关系:

  • test command (program that is invoked as a test)
  • job unit
  • test plan
  • provider
  • launcher

1. Test Command

自动化测试和一些交互式测试使用外部命令来帮助确定测试的结果。
例如:

ping 8.8.8.8 -c 1

将检查设备是否可以ping通一个公网DNS。如果命令成功(ping返回),则返回0,如果ping超时则返回1。

让我们把这个简单的命令转换成一个checkbox 测试。

2. Job Unit

以上段落中的命令现在可以在作业单元中使用:

id: ping-public-dns
_summary: Ping public DNS
plugin: shell
command: ping 8.8.8.8 -c 1

注意command字段是如何直接复制粘贴Test命令的

关系:Test命令是作业单元的一部分

Note

有些测试是完全手动的,不运行任何命令。

有关作业单元的更多信息有关作业单元的更多信息,请参阅Checkbox Unit Types

3. Test Plan

当checkbox 从命令行运行,没有任何参数,即:

$ checkbox-cli

它并没有提供系统中所有可用的测试。checkbox 询问用户要使用哪个测试计划。

Note

有关如何直接运行精心挑选的作业,请参见:checkbox-cli run

测试计划是将相关工作分组在一起的单元。它们还提供了在运行时创建新作业的机制。完成此操作的阶段称为引导。测试多gpu系统是一个很好的例子。没有人预先知道哪个GPU将出现在系统中,所以引导阶段将从模板单元实例化适当的工作单元。

关系:测试计划包括可以运行的作业。
关系:测试计划可以(通过引导)“生成”一个可以运行的作业。

您可以在这里关于模板的内容:模板单元,以及关于测试计划的内容:测试计划单元。

4. Provider

为了让checkbox 查看任何作业、测试计划和其他单元,这些单元需要写入到位于系统中可用提供者的单元子目录中的.pxu文件中。

关系:单元放置在提供者中

有关如何从头创建提供程序的教程,请参阅checkbox 教程。

5. Launcher

启动器可以使它更容易运行checkbox 在预设的方式。

例如预设:

  • 使用哪些测试计划
  • 会话应该是交互式的还是自动的
  • 排除哪些测试
  • 如何以及在哪里提交结果

这里有一个完整的启动器教程:checkbox 启动器教程。

  相关解决方案