使用pytest生成allure报告

10 投票
5 回答
61992 浏览
提问于 2025-04-28 05:16

我正在使用pytest的allure适配器,想要生成allure报告所需的输入数据。但是我没有办法生成任何XML文件。当我用命令py.test sample.py执行这个py文件时,它确实创建了一个pycache目录。接着我执行了“allure generate -v 1.3.9 C:\allurereports”(这是我放置sample.py的目录)。它确实生成了一个allure的HTML报告,但测试用例的数量是0,里面没有任何细节。

这个sample.py(和示例中给的一样)

import allure


@allure.feature('Feature1')
@allure.story('Story1')
def test_minor():
    assert False


@allure.feature('Feature2')
@allure.story('Story2', 'Story3')
@allure.story('Story4')
class TestBar:

    # will have 'Feature2 and Story2 and Story3 and Story4'
    def test_bar(self):
        pass

这是我使用的py.test命令: py.test sample.py --allure_features=feature1,feature2

有没有人能帮我一下,怎么从这个文件生成allure报告?需要执行哪些命令?

暂无标签

5 个回答

0

现在你必须使用allure-command-line来生成html报告,因为allure-cli这个工具已经不再更新了。

1

这是我找到的一个有效的方法 -

python3 -m pytest [your_test_class_name] --alluredir \Report

然后在你保存报告的地方执行下面这行代码 -

python3 -m allure serve \Report

这样就会在你默认的浏览器中打开这个报告。

1

你需要指定一个包含测试数据的目录(也就是存放-testsuite.xml文件的地方),而不是测试目录

你可以使用 py.test --alluredir [path_to_report_dir] 来指定这个目录。

另外,确保你使用的是正确版本的 allure(最新的 pytest 适配器只支持 allure 1.4.*)。

想了解更多信息,可以查看 https://github.com/allure-framework/allure-pythonhttps://github.com/allure-framework/allure-cli

5

生成报告的方式非常简单,使用 allure 就可以:

首先,安装 allure:

  1. allure-pytest 2.6.0
  2. allure-python-commons 2.6.0

接下来,如果你无法生成报告,可以按照以下步骤操作:

  1. (使用 pytest)

    pytest test_xyz.py --alluredir=path_where_you_want_to_save_reports
    
  2. allure serve report_path
    

如果还是提示 allure 不是一个识别的命令(blah -blah),那么可以用 npm 插件来安装 allure,使用下面的命令:

npm install -g allure-commandline --save-dev

然后再按照步骤 (2) 操作,这样就会启动一个服务器,你就可以看到 allure 的报告了。

18

Lavanya。

我来给你讲讲怎么生成自动测试的 allure 报告。

  1. 首先,安装 pip。你需要下载 get-pip.py 文件,然后运行 python get-pip.py 来安装。

  2. 接下来,通过 pip 安装 pytestpytest-allure-adaptor。运行 python -m pip install pytest allure-pytest

  3. 生成自动测试的 allure xml 报告。运行 python -m pytest sample.py --alluredir <某个目录>

  4. 在 <某个目录> 下会出现 xml 格式的自动测试报告,里面包含了 sample.py 测试的结果。接下来,我们用 allure-cli 工具来生成漂亮的 html 报告。

  5. 安装 allure-cli。下载 最新版本的 allure-cli。注意,allure-cli 需要 Java 环境。它不需要安装,只需 解压后直接使用

  6. 生成 html 报告。在解压后的文件中找到 allure(Windows 系统下是 allure.bat)。运行 allure.bat generate -o <某个目录> -v 1.4.0 <某个目录>

  7. 在 <某个目录> 中找到 index.html 文件,用浏览器打开它。

*注意 <某个目录> 在所有步骤中都是相同的。

撰写回答