提供软件测试案例结果的见解。
项目描述
testyoke
为任何编程语言提供软件测试案例结果的见解。
本项目将提供资源以记录测试套件的结果,并旨在为您的测试添加有用的见解。测试被视为黄金,但如何修剪无效、无效或纯粹不准确的不当测试用例?使用TestYoke您可以将
- 看到之前在这个git sha上测试的结果。这里可以节省大量时间,因为不需要再次运行。
- 不稳定测试 - 在当前sha上既通过又失败。可能存在数据或服务依赖问题。
- 糟糕测试 - 在连续的sha中失败的测试。
如果仍然部署了这些测试,这些测试就毫无价值了。提示用户删除,因为它们比一个好的测试更有价值。 - 回归 - 在不同的sha中失败,然后修复,但再次失败的测试。回归是重复出现的问题。它们可能会促使优先修复。
本项目中的HTTP服务可以在后台运行并接收测试结果,无论您如何运行测试。
该服务目前接受junit xml格式,并且您的测试框架很可能可以导出该格式。尝试在构建过程中设置在套件运行后发布测试结果。
安装
pip install testyoke
入门
您需要一个服务器来报告指标。请参阅“运行服务”。
testyoke包装器
正在开发测试套件包装器。目前仅支持pytest。
testyoke pytest
许多框架
testyoke
包装器支持许多测试框架。您可以通过提供FRAMEWORK
环境变量来手动指定您正在使用的框架。
FRAMEWORK=rspec testyoke rspec
自行运行服务
- 运行服务。默认端口为7357,但您可以使用
YOKE_PORT
环境变量设置它。
python3 -m testyoke.server YOKE_PORT=7357
- 每次运行测试时,使用客户端将结果以
POST
方式发送。
python -m testyoke.client --sha=`git rev-parse HEAD` --report=junit.xml
junit.xml
是目前事实上的格式,因为它在该领域是较为常见的格式之一。它被pytest、scalatest和显然的Java框架所支持。这是第一个支持的格式,但预计很快还会支持更多格式。
您可以通过客户端使用curl/HTTP Post提交,或者通过curls(在测试运行后运行此命令)
curl -H "vc-sha: $(SHA)" -H "Content-Type: application/xml+junit" -X POST -d @target/path/to/JUNIT.xml http://localhost:7357/projects/testharness/reports
通过以下方式获取报告:
curl http://localhost:7357/projects/testharness/shas/$(GIT_SHA)
分析
在测试运行之前运行此命令。
这将为您提供历史信息。如果SHA之前已被验证,则将其报告为clean
。
python -m testyoke.client --sha=`git rev-parse HEAD`
示例输出
###################################################
#
# nature: untested. fails 0, passes 0
#
###################################################
自然
这是对您正在运行的SHA的分类。
untested
- testyoke尚未看到此SHA的结果clean
- testyoke从未在此SHA上看到失败broken
- 此SHA从未完全通过。flaky
- 至少有一个易变的测试,定义为在相同的SHA上通过和失败。
组件
- HTTP服务
- 报告器
- scalatest
- pytest
- rspec
- cli客户端
- 分析
- 网络门户
架构
API -> 持久化分析器
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解更多关于安装包的信息。
源分布
testyoke-0.2.6.tar.gz (12.4 kB 查看散列值)
构建分布
testyoke-0.2.6-py3-none-any.whl (14.7 kB 查看散列值)
关闭
testyoke-0.2.6.tar.gz的散列值
算法 | 散列摘要 | |
---|---|---|
SHA256 | 1c6f9ee76414428f73555ca7993a71b6cfe7898fae00c09d84426bd6f1fa041b |
|
MD5 | 2a73a38178d998677bc726e337ed61be |
|
BLAKE2b-256 | b6c17a7716d137f4a46eb868e0aa47dad5f2587f3a675d804c3a849582bfaf04 |
关闭
testyoke-0.2.6-py3-none-any.whl的散列值
算法 | 散列摘要 | |
---|---|---|
SHA256 | e64704477272534b3a3e1d069c54aba832ff5feba9a53989449f72b6e11057db |
|
MD5 | 3d86d93193574cdfc0db3032c015ff89 |
|
BLAKE2b-256 | 2c5dc7d88a7d0554ffb08092728a3038dc8fc588bba58e8a4161c8952f4ec374 |