Behave 简明教程

Behave - Reports

报告生成是朝着测试自动化框架迈出的最重要的步骤之一。在执行结束时,我们无法依赖控制台输出,而是应该提供一份详细的报告。

它应包括通过、失败、跳过的测试数量、特性和场景细分信息。Behave 不会生成内置报告,但可以以多种格式输出,我们可以利用第三方工具生成报告。

使用命令显示 Behave 中所有可用格式化程序:

behave --format help

当您使用该命令时,您的电脑上将出现以下屏幕:

reports

一些常见的 Behave 报告为:

  1. Allure Report.

  2. Output JSON Report.

  3. JUnit Report

JUnit Report

让我们执行一个包含两个特性文件的测试,其测试结果如下:

junit report

上述测试的项目文件夹结构如下:

project folder structure

Step 1 − Execute the command

要创建一个 JUnit 报告,请运行下面给出的命令:

behave --junit

Step 2 − Report folder generation

将在项目中生成一个名为 reports 的文件夹,名称为 TESTS-<feature file name>.xml

report folder generation

此处,Payment 和 Payment1 是特性文件名称。

Step 3 − Report generation to a specific folder

要将报告生成到一个特定文件夹(比如 my_reports),我们需要运行下面提到的命令:

behave --junit --junit-directory my_reports
specific folder

一个名为 my_reports 的文件夹将在项目中生成,其中包含该报告。

JSON Report

我们可以创建行为 JSON 报告。JSON 实际上是一种格式化器。

让我们执行一个包含两个特性文件的测试,其测试结果如下:

feature passed

上述测试的项目文件夹结构如下−

structure

Step 1 − Execute the command

要在控制台中创建 JSON 输出,运行命令−

behave -f json

将出现以下屏幕−

console

Step 2 − Output in readable format

要以更易读的格式创建 JSON 输出,运行以下命令−

behave -f json.pretty

以下是捕获在下图中一部分输出−

json pretty

Step 3 − Report generation to a specific folder

要将报告生成到特定文件夹(例如 my_reports.json),我们必须运行以下命令−

behave –f json.pretty –o my_reports.json

下图表示将出现在您计算机上的屏幕。

my reports json

一个名为 my_reports.json 的文件夹会在项目中生成,其中包含所有已执行特征的详细信息。

Allure Report

要在 Behave 中生成 Allure 报告,我们首先必须在系统中安装 Allure。如需从 Linux 命令行安装,依次运行以下命令−

sudo apt-add-repository ppa:qameta/allure
sudo apt-get update
sudo apt-get install allure

对于 Mac 用户,安装使用 Homebrew 完成,且使用以下命令−

brew install allure

对于 Windows,Allure 从 Scoop 安装程序安装。运行以下命令下载并安装 Scoop,最终在 PowerShell 中执行−

scoop install allure

要从 Scoop 更新 Allure 分发安装,从 Scoop 安装目录运行以下命令−

\bin\checkver.ps1 allure -u

最后,运行以下给出的命令−

scoop update allure

安装 Allure 后,我们必须为 Python 获取 Allure-Behave 集成插件。为此,运行以下命令−

pip install allure-behave

要验证是否已成功安装 Allure,请运行以下说明的命令−

allure

让我们执行一个包含两个特性文件的测试,其测试结果如下:

execute a test

上述测试的项目文件夹结构如下−

my allure

Step 1 − Report generation to a specific folder

要将报告生成到特定文件夹(例如 my_allure),我们必须运行以下命令−

behave -f allure_behave.formatter:AllureFormatter –o my_allure

你会得到如下所示的屏幕——

json extension

一个名为 my_allure 的文件夹会在项目中生成,其中包含带有 .json 扩展名的文件。

Step 2 − Start the web server

要启动 Web 服务器,运行以下给出的命令:

allure serve my_allure

这里,my_ allure 是包含 allure JSON 文件的目录。

allure json files

同时,打开一个浏览器,其中包含如下所示的 Allure 报告:

allure report

我们还可以点击各个 feature 并找到它们的分解,如下所示:

allure
behaviors