SuperAPI AI 工具集

reporter-setup

测试与质量

查看项目

更新于 10-16 04:39

技能介绍

用途

此技能用于在测试自动化项目中安装并配置 Testomat.io 报告器,将测试结果发送到 Testomat.io 测试工作区(TMS)。适用于从零搭建 Testomat.io 报告、为已有框架/项目添加报告器、配置特定报告选项、将测试结果推送到 Testomat.io TMS 等场景。

工作流程

第一步:识别项目语言与框架

先通过项目文件识别主要编程语言:package.json 对应 JavaScript/TypeScript;requirements.txt、pyproject.toml、setup.py 对应 Python;pom.xml、build.gradle 对应 Java;*.csproj 对应 C#/.NET;composer.json 对应 PHP;Gemfile 对应 Ruby。

再根据语言识别测试框架:JavaScript/TypeScript 下通过 playwright.config.ts、codecept.conf.js、wdio.conf.js、jest.config.js、mocha.opts/.mocharc.* 等识别 Playwright、CodeceptJS、WebdriverIO、Jest、Mocha;Python 下通过 pytest.ini、conftest.py 识别 pytest,通过 .robot、robot.toml 识别 Robot Framework;Java 下通过 pom.xml 依赖、testng.xml 等识别 JUnit/TestNG;其他语言可识别 XML 报告文件。

若未检测到框架,进入交互式设置,请用户手动指定框架后继续。完成后输出简短日志式摘要,包含语言、框架、发现的配置文件、API key 来源。

第二步:配置凭据

检查 .env 中是否存在 TESTOMATIO API key。若存在则直接使用;若缺失则创建或更新 .env,写入占位符 TESTOMATIO=tstmt_xxxxx,并请用户手动替换为实际的 Project Reporting API key。获取方式:打开 Testomat.io → 进入项目 → Settings → Project → Project Reporting API key。

第三步:安装与配置报告器

按语言与框架配置对应报告器:

  • JavaScript/TypeScript 使用 @testomatio/reporter(npm install @testomatio/reporter --save-dev),分别按 Playwright、CodeceptJS、WebdriverIO、Jest、Mocha 的方式修改配置或使用 CLI 参数。
  • Python(pytest)使用 pytestomatio(pip install pytestomatio),通过 pytest --testomatio sync 同步、pytest --testomatio report 运行并上报;Robot Framework 使用 pip install robot-framework-reporter,通过 robot --listener Testomatio.Import 导入、robot --listener Testomatio.Report 上报。Python 2.x 与 3.x 共存时使用 pip3。
  • Java 按框架添加 io.testomat 依赖(java-reporter-testng、java-reporter-junit、java-reporter-karate),运行 mvn clean test。

第四步:将自动化测试导入 Testomat.io TMS

JavaScript/TypeScript 使用 check-tests CLI 导入,例如 npx check-tests@latest Playwright "tests/**/*.spec.js",支持 Playwright、CodeceptJS、Cypress、Jest、Mocha、WebdriverIO,TypeScript 项目加 --typescript,使用 --update-ids 可同步并自动写入 ID。Java 使用 testomatio.jar CLI,支持 import、clean-ids、sync(别名 update-ids)命令。Python 通过 pytest 的 sync 或 Robot Framework 的 Import 监听器导入。C#、PHP、Ruby、Go 等无原生报告器的语言可先生成 JUnit XML,再用 npx check-tests@latest junit "path/to/results.xml" 导入。

第五步:验证配置

运行测试后确认结果已发送。优先通过 Testomat.io MCP 拉取最新运行记录验证;也可启用 Debug 模式,设置 DEBUG=@testomatio/reporter:pipe:testomatio,仅运行 1-2 个测试查看本地输出。

第六步:配置工件(可选)

仅在用户明确要求配置工件或提及保存截图、视频、trace、日志时触发。前提是首次测试报告已成功执行。先检查 .env 中是否已有 S3 凭据(S3_ACCESS_KEY_ID、S3_BUCKET、S3_REGION)。若无则先创建 S3 桶并获取凭据,可通过 Testomat.io UI(Settings → Artifacts,启用 Share credentials)或环境变量(S3_ACCESS_KEY_ID、S3_SECRET_ACCESS_KEY、S3_BUCKET、S3_REGION,非 AWS 提供商另加 S3_ENDPOINT)配置。支持 AWS S3、DigitalOcean、Google Cloud Storage、Cloudflare R2、Minio。配置后运行测试并在 Testomat.io 运行结果中检查附件是否可查看。

错误处理

缺 TESTOMATIO token 或包未安装时先尝试恢复(请用户提供、提议安装);系统错误、CLI sync 命令失败(网络/认证/401/403)时立即停止。

限制

资料未提供该技能的具体收费、价格信息;工件存储等可选项依赖第三方 S3 兼容服务,具体配置需参照对应提供商官方文档。