SuperAPI AI 工具集

run-tests

测试与质量

查看项目

更新于 10-16 07:29

技能介绍

用途

run-tests 用于运行采集客户端的单元测试并汇报结果。它接受一个可选的客户端名称参数,既可以运行全部客户端的测试,也可以只运行某一个客户端的测试。

主要能力

  • 运行全部客户端测试:/run-tests
  • 只运行 Modbus 客户端测试:/run-tests modbus
  • 只运行 OPC UA 客户端测试:/run-tests opcua
  • 只运行 MQTT 客户端测试:/run-tests mqtt

使用方式

执行时按以下步骤进行:

  1. 运行 uv sync 以确保依赖已安装。
  2. 确定测试范围:
    • 如果提供了客户端名称,运行 uv run pytest clients/{name}/tests/ -v
    • 如果没有提供名称,运行 uv run pytest clients/ -v
  3. 汇报结果:
    • 通过、失败和错误的数量
    • 对于失败项:测试名称、文件:行号以及失败的断言
    • 不要直接输出原始 pytest 输出,而是进行汇总

测试必须覆盖的内容

根据 Definition of Done(.claude/rules/definition-of-done.md):

  • 所有标签名都存在于 contracts/tag_database.csv
  • 时间戳为带时区的 UTC
  • shared.validation.validate_reading() 返回无违规
  • 协议客户端(Modbus / OPC UA / MQTT)被 mock,无需真实服务器
  • DBWriter 被 mock 或指向测试数据库,绝不使用生产数据

适用场景

适用于在开发或验证采集客户端(Modbus、OPC UA、MQTT)时,快速运行单元测试并获取简洁的结果汇总。

限制

资料中未提供关于收费、价格、平台支持范围或具体性能效果的信息。