Testults - 集成您的自动化测试


Tesults 使库可用于集成各种语言,其中包括 -

  • Python
  • 节点.js / JS
  • 爪哇
  • C#
  • Ruby

还有一个可用的 REST API。要上传测试生成的数据和文件,必须使用其中一个库。

无代码集成

对于某些测试框架,可以使用可用的测试框架特定库进行集成,而无需任何代码。

不需要代码集成的测试框架包括 -

  • py测试
  • 机器人
  • 笑话
  • 摩卡
  • JUnit5
  • N单元3

所有这些库的集成过程都是相似的。

安装插件

在您的测试项目中,安装相关的 Tesults 插件。例如,如果您使用 pytest,则可以使用'pip install tesults'后跟'pip install pytest-tesults'来完成。如果您使用 Mocha,请使用'npm install mocha-tesults-reporter – save'。在 Tesults 网站上查看适合您的测试框架的命令。

配置插件

有些插件不需要配置,可以立即使用,有些则需要少量配置。例如,对于 pytest,不需要额外的配置并且可以使用。

对于 Mocha,需要对'mocha'调用进行一个小更改,特别是需要指定报告器'mocha --reporter mocha-tesults-reporter'。请参阅 Tesults 网站,了解您正在使用的框架的具体配置,但一般来说,配置是一行更改或不更改。

传递参数

有一个必需参数传递给插件和其他可选参数。所需的 arg 是提供 Tesults 目标标记。该令牌是在为上一个教程页面中的默认目标创建项目时生成的。如果您在测试结果的配置菜单中没有此令牌,则可以获取新令牌。单击配置菜单中的“重新生成目标令牌” 。

如何传递参数取决于您的测试框架和插件。例如,在 pytest 中,可以在 pytest 调用“pytest --tesults-target token_value”中或通过使用配置文件来提供。对于Mocha来说,也是类似的,可以在mocha中传递,称为“mocha * --reporter mocha-tesults-reporter -- tesults-target=token”,也可以在配置文件中传递。

目标令牌是唯一必需的参数,还有用于传递构建信息和文件上传的可选参数。有关测试框架的参数的具体信息,请参阅 Tesults 网站。

运行测试

运行您的测试,结果现在将提交给 Testults。

代码集成

如果您使用的是自定义测试框架或 Tesults 没有特定库或插件的测试框架,您需要使用其中一种语言框架。

在这里,我们将了解一下 Python 集成涉及哪些内容。其他语言具有非常相似的集成过程,请参阅 Tesults 网站了解您的编程语言的具体详细信息,但首先按照本教程了解该过程 -

安装库

对于 Python,命令如下:

pip install tesults

对于其他语言,过程类似,对于 JS 测试框架,您可以从 npm 安装库,对于 Java,您可以使用 Gradle 或 Maven,对于 C#,包托管在 NuGet 上,而 Ruby 将其作为 gem 提供。

配置库

对于 Python,配置只涉及您想要使用该库的任何模块中的require 'testults' 。同样,其他语言也需要类似的配置。有关您的编程语言的具体配置,请参阅 Testults 网站。

地图测试数据

无代码插件可以让您避免这一步。对于基于代码的集成,您必须将测试数据映射到 Tesults 测试数据。

对于 Python,这意味着将每个测试用例结果转换为 Python 字典 -

{
   'name': 'Tutorial 1',
   'desc':'Tutorial 1 .',
   'suite': 'Tutorials Point',
   'result': 'fail',
   'reason': 'Assert fail in line 102, tutorialspoint.py',
   'files': ['full-path/log.txt', 'full-path/screencapture.png'],
   '_CustomField': 'Custom field value'
}

名称和结果为必填项。其他一切都是可选的。结果必须是'pass'、'fail'或 'unknown' 之一。

该套件很有用,因为它可以在查看结果时帮助对测试用例进行分组,并有助于避免名称冲突。对于失败的测试用例应提供原因。

文件对于确保存储日志和其他测试文件非常有用,并且可以与它们所属的测试用例一起查看。

您还可以拥有任意数量的自定义字段;它们必须以下划线 (_) 字符开头。对于每个测试用例,以这种方式构建一个字典,并将它们存储在一个数组中。

上传结果

为了上传结果,每个图书馆都提供了结果上传功能。对于 Python,您需要调用以下命令 -

tesults.results(data)

其中数据参数如下 -

data = {
   ‘target’: ‘token’,
   ‘results’: {
      ‘cases’: [<your test cases>]
   }
}

Cases 数组是在上一节中创建的数组。

对于其他编程语言,该过程完全相同,只是语法发生变化。

帮助

如果您需要,Tesults 网站可以提供请求集成帮助的方法。

下一步

至此,集成已完成,我们可以看看如何查看、分析测试结果并采取行动。