allure 是一个 report 框架,支持 java 的 Junit/testng 等框架,当然也可以支持 python 的 pytest 框架,也可以集成到 Jenkins 上展示高大上的报告界面。

环境准备
1.python3.6
2.windows 环境
3.pycharm
4.pytest-allure-adaptor
5.allure2.7.0
6.java1.8 pytest-allure-adaptor 下载
pip 安装 pytest-allure-adaptor,github 地址 https://github.com/allure-framework/allure-pytest
> pip3 install pytest-allure-adaptor 生成 xml 报告
> pytest -s -q --alluredir report
如果不指定路径,默认在当前目录下新建一个 report 目录,当然也可以指定路径
> pytest -s -q --alluredir 指定 report 路径
执行完之后打开 report 文件夹,会自动生成 xml 格式的报告 安装 Command Tool
allure 的版本目前有 2 个,从 github 上看,allure1 不再被支持,请考虑使用 allure2 https://github.com/allure-framework/allure2替代 allure-commandline releases 版本 https://github.com/allure-framework/allure2/releases 下载最新的 Download allure2.7.0 版本
[下载 Download allure2.7.0 地址:https://dl.bintray.com/qameta/generic/io/qameta/allure/allure/2.7.0/allure-2.7.0.zip]
(https://dl.bintray.com/qameta/generic/io/qameta/allure/allure/2.7.0/allure-2.7.0.zip)

下载好之后,解压到运行 pytest 的目录下
打开\allure-2.7.0\bin 文件夹,会看到 allure.bat 文件,将此路径设置为系统环境变量 path 下,这样 cmd 任意目录都能执行了


运行 allure2
前面 pytest -s -q —alluredir 这一步已经生产了 xml 格式的报告,
放到了 report 目录下,接着执行以下命令格式
> allure generate directory-with-results/ -o directory-with-report
directory-with-results 是 alluredir 生成的 xml 目录,
directory-with-report 是最终生成 html 的目录
allure.bat 已经加到环境变量了,所以可以用相对路径去生成 html报告
> allure generate report/ -o report/html

打开报告
直接找到 report/html 打开 index.html 会显示一个空的报告,这里用 pycharm 去打开


依赖 java 环境  (搭建java环境自行百度)
之前用的 jdk1.7 版本,执行 allure 时候报错:Unsupported major.minor VERSION 51.0
由于 allure2 是 java 开发的,需要依赖 java 环境,解决办法:jdk 版本用 1.8 就可以了 如果前学过 unittest 框架的应该知道,unittest 框架用个痛点,用例不用例之间的独立的,不能跨脚本运行数据共享。比如 test_01.py的 driver,不能共享到 test_02.py 上。这样会导致一个问题,每次运行一个.py 的脚本用例,会重复打开浏览器,浪费比较多的时间。 pytest 框架就能很好的解决这个问题,只需在 conftest.py 设置一个前置的 fixture 功能,设置为 session 级别,返样所有的用例之间都能共享 driver 了。

pytest十六:allure2 生成 html 报告的更多相关文章

  1. pytest 11 allure2生成html报告

    allure是一个report框架,支持java的Junit/testng等框架,当然也可以支持python的pytest框架,也可以集成到Jenkins上展示高大上的报告界面. 环境准备 1.pyt ...

  2. Pytest学习(十二)-生成HTML报告插件之pytest-html的使用

    环境前提 Python3.6+ 安装插件 pip3 install pytest-html -i http://pypi.douban.com/simple/ --trusted-host pypi. ...

  3. pytest文档13-allure2生成html报告(史上最详细)

    前言 allure是一个report框架,支持java的Junit/testng等框架,当然也可以支持python的pytest框架,也可以集成到Jenkins上展示高大上的报告界面. 环境准备 1. ...

  4. pytest文档7-pytest-html生成html报告

    前言 pytest-HTML是一个插件,pytest用于生成测试结果的HTML报告.兼容Python 2.7,3.6 pytest-html 1.github上源码地址[https://github. ...

  5. jmeter(二十六)生成HTML性能测试报告

    性能测试工具Jmeter由于其体积小.使用方便.学习成本低等原因,在现在的性能测试过程中,使用率越来越高,但其本身也有一定的缺点,比如提供的测试结果可视化做的很一般. 不过从3.0版本开始,jmete ...

  6. allure2生成html报告

    前言 allure是一个report框架,支持java的Junit/testng等框架,当然也可以支持python的pytest框架,也可以集成到Jenkins上展示高大上的报告界面. 环境准备 1. ...

  7. 使用allure2生成精美报告

    安装:brew install allure pip install allure-pytest 在测试执行期间收集结果 pytest -s –q --alluredir=./result/ 测试完成 ...

  8. Wix 安装部署教程(十六) -- 自动生成多语言文件

    因为持续集成需要,所有项目编译完之后生成一个多语言的安装包.之前生成mst文件都是手动操作,而且mst文件必须每次重新和新的安装包“关联”,否则中文的安装包去调用英文的资源的时候就会报类似于“类型转换 ...

  9. 深度学习(六十六)生成模型、最大化似然、KL散度

随机推荐

  1. 函数和常用模块【day06】:pickle模块(十二)

    本节内容 1.dumps序列化和loads反序列化 2.dump序列化和load反序列化 3.序列函数 1.dumps序列化和loads反序列化 dumps()序列化 1 2 3 4 5 6 7 8 ...

  2. java中equals和compareTo的区别---解惑

    大多转载自 百度知道,个人整理以便日后阅读. value1.compareTo(value2) == 0 value1.equals(value2) equals的效率高些,compareTo其实就是 ...

  3. spring tool suite处理 maven项目名称红色感叹号的问题

    今天构建一个springboot项目时,发现项目有个红色感叹号,但是pom.xml跟Build Path 都没问题. 解决方案: 选择 Windows --> show view --> ...

  4. Forth 语言概要 - Forth: An underview

    Forth 语言概要 - Forth: An underview 原作者 Peter Knaggs 原文标题< Forth: An underview > 译者: 未知 译文链接: htt ...

  5. .NET面试题系列(十三)Lucene底层原理

    索引原理 全文检索技术由来已久,绝大多数都基于倒排索引来做,曾经也有过一些其他方案如文件指纹.倒排索引,顾名思义,它相反于一篇文章包含了哪些词,它从词出发,记载了这个词在哪些文档中出现过,由两部分组成 ...

  6. This dependency was not found: * !!vue-style-loader!css-loader?

    npm install stylus-loader css-loader style-loader --save-dev 猜测这两个组件发布时是不需要的,所以要加上-dev

  7. 5. SprigBoot自动配置原理

      配置文件到底能写什么?怎么写? 都可以在SpringBoot的官方文档中找到: 配置文件能配置的属性参照   1.自动配置原理: 1).SpringBoot启动的时候加载主配置类,开启了自动配置功 ...

  8. Python巧用正则表达式,完成接口参数替换

    最近给Python11期的小朋友们上课,遇到了一个参数替换的问题,首先描述下场景: 需要参数化的数据如下所示: 这个时候如果利用单纯的if判断和字符串的find和replace方法,做起来是非常不明智 ...

  9. vue单页应用中 返回列表记住上次滚动位置、keep-alive缓存之后更新列表数据 那点事

    实践场景需求 产品列表中,滚动到一定位置的时候,点击查看产品信息,后退之后,需要回到原先的滚动位置,这是常见的需求 所有页面均在router-view中,暂时使用了keep-alive来缓存所有页面, ...

  10. Python(十) Python 中的 *args 和 **kwargs

    转载:团子的小窝 http://kodango.com/variable-arguments-in-python