调试和运行自定义测试套件 - 免费 RTOS

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

调试和运行自定义测试套件

设置完所需的配置后,IDT就可以运行您的测试套件了。完整测试套件的运行时取决于硬件和测试套件的组成。作为参考,在 Raspberry Pi 3B 上完成完整的免费RTOS资格测试套件大约需要 30 分钟。

在编写测试套件时,您可以使用IDT在调试模式下运行测试套件,以便在运行代码之前检查代码或将其提供给测试运行者。

IDT在调试模式下运行

由于测试套件依赖IDT于与设备交互、提供上下文和接收结果,因此您不能在没有任何IDT交互IDE的情况下简单地调试测试套件。为此,IDTCLI提供了允许您在调试模式下运行IDT的debug-test-suite命令。运行以下命令以查看 debug-test-suite 的可用选项:

devicetester_[linux | mac | win_x86-64] debug-test-suite -h

当你IDT在调试模式下运行时,实际上IDT不会启动测试套件或运行测试协调器;相反,它会与你交互IDE以响应在中运行的测试套件发出的请求,IDE并将日志打印到控制台。IDT不会超时,等待退出,直到手动中断。在调试模式下,IDT也不会运行测试协调器,也不会生成任何报告文件。要调试您的测试套件,必须使用IDE来提供一些IDT通常从配置文件中获取的信息。务必提供以下信息:

  • 每个测试的环境变量和参数。IDT不会从test.json或中读取此信息suite.json

  • 用于选择资源设备的参数。IDT不会从中读取此信息test.json

要调试您的测试套件,请完成以下步骤:

  1. 创建运行测试套件所需的设置配置文件。例如,如果您的测试套件需要 device.jsonresource.jsonuser data.json,请确保根据需要来配置所有测试套件。

  2. 运行以下命令进入调IDT试模式,然后选择运行测试所需的所有设备。

    devicetester_[linux | mac | win_x86-64] debug-test-suite [options]

    运行此命令后,IDT等待来自测试套件的请求,然后对其进行响应。IDT还会生成IDT客户案例处理所需的环境变量SDK。

  3. 在您的中IDE,使用rundebug配置执行以下操作:

    1. 设置生IDT成的环境变量的值。

    2. 设置您在 test.jsonsuite.json 文件中指定的任何环境变量或参数的值。

    3. 根据需要设置断点。

  4. 在你的中运行测试套件IDE。

    您可以根据需要多次调试和重新运行测试套件。IDT在调试模式下不会超时。

  5. 完成调试后,请中断IDT以退出调试模式。

IDTCLI运行测试的命令

以下部分描述了这些IDTCLI命令:

IDT v4.0.0
help

列出有关指定命令的信息。

list-groups

列出给定测试套件中的组。

list-suites

列出可用的测试套件。

list-supported-products

列出您的版本(在本例中为免费RTOS版本)支持的产品,以及适用于当前版本的免费RTOS资格测试套件IDT版本。IDT

list-test-cases

列出给定测试组中的测试用例。支持以下选项:

  • group-id. 要搜索的测试组。此选项是必需的,必须指定单个组。

run-suite

对某个设备池运行一组测试。以下是一些常用的选项:

  • suite-id. 要运行的测试套件版本。如果未指定,则IDT使用tests文件夹中的最新版本。

  • group-id. 要以逗号分隔的列表形式运行的测试组。如果未指定,则IDT运行测试套件中的所有测试组。

  • test-id. 要以逗号分隔的列表形式运行的测试用例。指定后,group-id 必须指定单个组。

  • pool-id. 要测试的设备池。如果您在 device.json 文件中定义了多个设备池,则测试运行器必须指定一个池。

  • timeout-multiplier。 配置IDT为使用用户定义的乘数修改test.json文件中为测试指定的测试执行超时。

  • stop-on-first-failure。 配置IDT为在第一次失败时停止执行。应将此选项与 group-id 结合使用来调试指定的测试组。

  • userdata。设置包含运行测试套件所需用户数据信息的文件。只有在测试套件的 suite.json 文件中 userdataRequired 被设置为 true 时,才需要这样做。

有关 run-suite 选项的更多信息,请使用 help 选项:

devicetester_[linux | mac | win_x86-64] run-suite -h
debug-test-suite

在调试模式下运行测试套件。有关更多信息,请参阅 IDT在调试模式下运行