跳转到主要内容

提供软件测试案例结果的见解。

项目描述

testyoke

为任何编程语言提供软件测试案例结果的见解。

本项目将提供资源以记录测试套件的结果,并旨在为您的测试添加有用的见解。测试被视为黄金,但如何修剪无效、无效或纯粹不准确的不当测试用例?使用TestYoke您可以将

  • 看到之前在这个git sha上测试的结果。这里可以节省大量时间,因为不需要再次运行。
  • 不稳定测试 - 在当前sha上既通过又失败。可能存在数据或服务依赖问题。
  • 糟糕测试 - 在连续的sha中失败的测试。
    如果仍然部署了这些测试,这些测试就毫无价值了。提示用户删除,因为它们比一个好的测试更有价值。
  • 回归 - 在不同的sha中失败,然后修复,但再次失败的测试。回归是重复出现的问题。它们可能会促使优先修复。

本项目中的HTTP服务可以在后台运行并接收测试结果,无论您如何运行测试。

该服务目前接受junit xml格式,并且您的测试框架很可能可以导出该格式。尝试在构建过程中设置在套件运行后发布测试结果。

安装

pip install testyoke

入门

您需要一个服务器来报告指标。请参阅“运行服务”。

testyoke包装器

正在开发测试套件包装器。目前仅支持pytest。

testyoke pytest

许多框架

testyoke包装器支持许多测试框架。您可以通过提供FRAMEWORK环境变量来手动指定您正在使用的框架。

FRAMEWORK=rspec testyoke rspec

自行运行服务

  1. 运行服务。默认端口为7357,但您可以使用YOKE_PORT环境变量设置它。
python3 -m testyoke.server YOKE_PORT=7357
  1. 每次运行测试时,使用客户端将结果以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 查看散列值)

上传时间: Python 3

由以下机构支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面