Flutter 集成测试记者

Reporters for Flutter integration testing

我正在寻找 Flutter Integration 库与测试管理工具(如 TestRail 或 Xray)之间的集成示例。 对于 Cypress 和其他浏览器自动化工具,我可以找到很多解决方案,但对于 Flutter 集成,我基本上找不到。

对于 Xray,还没有教程。但是,它应该相当简单。

运行 您的测试使用 flutter test 并传递 --machine 参数以生成 JSON 报告。 使用 junitreport package 生成 JUnit XML 报告。 然后你可以将它添加到你的命令中:

flutter test --machine | tojunit -o junit.xml

如果您将其重定向到一个文件,那么您就有了可以提交给 Xray 的报告。 对于 Xray server/datacenter,您需要调用 the REST API endpoint,类似于:

curl -H "Content-Type: multipart/form-data" -u username:password -F "file=@junit.xml" http://yourserver/rest/raven/1.0/import/execution/junit?projectKey=JIRAPROJECTKEY

先为 Xray on Jira Cloud, the syntax is slightly different. You have to make an authentication request,然后再提交 JUnit XML 报告。

token=$(curl -H "Content-Type: application/json" -X POST --data '{ "client_id": "32A27E69B0AC4E5000000...","client_secret": "d62f81eb9ed859e1....." }'  https://xray.cloud.getxray.app/api/v2/authenticate)
curl -H "Content-Type: text/xml" -X POST -H "Authorization: Bearer $token"  --data @"junit.xml" https://xray.cloud.getxray.app/api/v2/import/execution/junit?projectKey=XTP