AutoTest 使用方法
AutoTest 提供了一种灵活的自动化测试解决方案,支持通过配置文件 config.ini 自定义压测时长和测试次数,并允许用户根据需求扩展测试用例,以满足不同的测试需求。该工具在驱动单元测试的基础上开发,实现了自动化测试功能,同时与功能单元的独立测试相互独立,并充分复用现有代码资源。
AutoTest 目录结构
AutoTest 使用 startup.sh 脚本读取 config/config.ini 配置文件来启动测试。用户可以通过修改 config/config.ini 文件自定义测试内容。在需要进行多个功能的稳定性或压力测试时,这种方式能显著减少用户重复配置测试环境的工作量。目前,AutoTest 已经复用了驱动功能单元测试中的以下测试项。
#:~/sdk/source/hobot-multimedia-samples/debian/app/multimedia_samples/chip_base_test$ tree
.
├── 01_cpu_bpu_ddr
│ └── scripts
│ └── stress_test.sh # CPU-BPU-DDR 压力测试
├── 02_emmc
│ └── emmc_stability_test.sh # eMMC 稳定性测试
├── 03_uart_test
│ └── uartstress.sh # 串口压力测试
├── 04_spi_test
│ └── spistress.sh # SPI 压力测试
├── config
│ └── config.ini # 自动化测试的配置文件
└── startup.sh # 配置自启动的脚本程序
config.ini 配置文件说明
config.ini 文件用于配置和管理 AutoTest 的测试项,通过调整其中的参数,用户可以快速选择需要执行的测试并指定测试参数。以下是文件结构及配置说明:
配置文件结构
每个测试项以 [测试项名称] 开头,包含以下字段:
- Status: 启用状态,可设置为
enabled(启用)或disabled(禁用)。 - Description: 测试项的简要描述,说明测试内容。
- ExecStart: 测试脚本的路径及运行参数,定义具体测试的执行方式。
配置文件示例
[CpuAndBpu]
Status=enabled
Description=CPU, BPU, and DDR stress test
ExecStart=/app/chip_base_test/01_cpu_bpu_ddr/scripts/stress_test.sh -t 24h
[EmmcStablity]
Status=enabled
Description=eMMC stability test
ExecStart=/app/chip_base_test/02_emmc/emmc_stability_test.sh -t 24h
[UART]
Status=enabled
Description=UART stress test
ExecStart=/app/chip_base_test/03uart_test/uartstress.sh -b 115200 -d /dev/ttyS2 -c 1000000
[SPI]
Status=enabled
Description=SPI stress test
ExecStart=/app/chip_base_test/04_spi_test/spistress.sh -d /dev/spidev0.0 -c 1000000
使用说明
- 编辑配置文件:
打开并编辑
config/config.ini文件,根据需要调整每个测试项的Status值:- 设置为
enabled:启用测试项。 - 设置为
disabled:禁 用测试项。
- 设置为
- 修改测试参数:
根据实际需求,调整
ExecStart中的命令和参数。例如:- 修改测试时长(如
-t 24h表示测试持续 24 小时)。 - 调整设备路径(如
/dev/ttyS2或/dev/spidev0.0)。 - 调整其他测试选项(如循环次数
-c或波特率-b)。 - 目前支持的所有测试项的脚本程序都支持
-h选项,可以查阅命令帮助信息来调整参数。
- 修改测试时长(如
使用 startup.sh 启动测试
在完成 config.ini 配置后,用户可以通过运行 startup.sh 脚本启动 AutoTest。脚本支持多种启动方式,以满足不同的使用需求:
-
手动启动或调试测试项
适用于使用官方系统镜像并需要手动运行或调试测试项的场景。执行以下命令启动测试:
/app/chip_base_test/startup.sh
# 或者
cd /app/chip_base_test
./startup.sh
此方式便于调试单项测试内容或观察测试执行情况。
- 自启动或调试测试项 测试项已经配置完成且调试通过时,也可以将startup.sh 放到 rc.local 自启动脚本中进行自启动测试,需要开发板在上电后自动运行测试的场景
查看测试日志
在测试运行期间,系统会生成相关日志文件,用户可以通过这些日志检查测试的进展或结果。默认情况下,日志文件保存在以下路径:
/app/chip_base_test/log
修改日志保存路径
用户可以通过以下两种方式更改日志的保存位置:
-
移动目录: 日志默认保存在
chip_base_test目录下。用户只需将整个chip_base_test目录移动到新的位置,例如:mv /app/chip_base_test /userdata/chip_base_test移动后,日志文件将自动保存到新的路径,例如:
/userdata/chip_base_test/log -
自定义日志输出路径 驱动单元测试程序的脚本支持通过
-o选项自定义日志目录。用户可以编辑config.ini配置文件,在对应测试项的ExecStart参数中添加-o选项。例如:ExecStart=/app/chip_base_test/01_cpu_bpu_ddr/scripts/stress_test.sh -t 24h -o /userdata/logs此配置会将日志保存到
/userdata/logs目录下。
通过灵活调整日志保存路径,用户可以更方便地管理和查看测试结果,同时满足不同环境下的日志存储需求。