Pytest+Allure环境的搭建
参考博客
1. pytest的安装:
1.1. windows下:
pip install pytest
1.2. linux下:
pip install pytest
2. 安装pytest-allure-adaptor插件
2.1. windows下:
pip install pytest-allure-adaptor
3. allure的安装:
3.1. windows下:
前情提示: allure是基于Java的一个程序,需要Java1.8的环境,没有安装需要去安装一下。
下载之后,将压缩包解压到一个磁盘中,我这里用的是F盘

3.2. 配置allure的环境变量


点击确定,保存。这样就可以通过CMD使用allure命令
3.3. 编写测试文件
pycharm新建一个test_demo.py文件,代码如下:
import allure
@allure.MASTER_HELPER.feature("测试Dome")
class TestDome(object):
@allure.MASTER_HELPER.step("定义被测函数")
def func(self, x):
return x+1
@allure.MASTER_HELPER.story("被测场景")
@allure.MASTER_HELPER.severity("blocker")
@allure.MASTER_HELPER.step("断言结果")
def test_func(self):
# with allure.MASTER_HELPER.step("断言结果"):
allure.MASTER_HELPER.attach("预期结果", "{}".format(self.func(3)))
allure.MASTER_HELPER.attach("实际结果", "{}".format(5))
assert self.func(3) == 5
3.4. 生成测试报告
在pycharm中打开terminal

输入命令pytest -s --alluredir=report,会遇到以下这个错误:

进入allure下面的utils文件,修改以下代码:
# utils文件,可以通过from allure import utlis进入
for suitable_name in suitable_names:
# markers.append(item.get_marker(suitable_name))
markers.append(item.get_closest_marker(suitable_name))

修改之后,再次运行pytest -s --alluredir=report命令:

运行后,无上述错误,同时会生成一个report文件。其中会有一个xml格式的报告:


当然xml格式的报告不够直观,我们需要通过allure将它转成HTML格式的报告。通过cmd命令cd到report的根目录下,执行allure generate --clean report

回到根目录下,会生成一个allure-report的文件夹,在pycharm中打开文件夹,点击index.html运行

ok,到此为止。可以看到我们的精美的测试报告了


作者:努力学习的小白
链接:https://www.jianshu.com/p/9673b2aeb0d3
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
Pytest+Allure环境的搭建的更多相关文章
- pytest+allure测试框架搭建
https://blog.csdn.net/wust_lh/article/details/86685912 https://www.jianshu.com/p/9673b2aeb0d3 定制化展示数 ...
- Docker - 使用 Jenkins 镜像创建容器,并搭建 Python + Pytest +Allure 的自动化测试环境
如果你还想从头学起 Docker,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1870863.html 安装 Docker 直接参考我这 ...
- Pytest 系列(24)- allure 环境准备
如果你还想从头学起Pytest,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1690628.html allure 和 pytest 相 ...
- Docker + Jenkins + Gitlab + Pytest + Allure 接口自动化测试之持续集成实战终极教程
实战教程篇 前言 这边就不教大家怎么用 pytest 写项目了哦,下面有系列文章能帮助你快速入门 Pytest + Allure 这一篇教程主要是教如何从 0 到 1 搭建自动化测试的持续集成环境 后 ...
- Pytest+Allure定制报告
前言: 最近在研究接口自动化的框架,好的测试报告在整个测试框架起到至关重要的部分.终于被我发现一个超好用的报告框架,不仅报告美观,而且方便CI集成. 就是它,就是它:Allure Test Repor ...
- appium+pytest+allure+jenkins 如何实现多台手机连接
使用appium可以实现app自动化测试,我们之前是连接一台手机去运行,如何同时连接多台手机呢?很多人可能想到的是多线程(threading).今天分享一种比多线程更简单的方法,虽然不是多台手机同时运 ...
- pytest使用笔记(三)——pytest+allure+jenkins配置使用
按照pytest使用笔记(二)把pytest+allure配置好后,现在在jenkins配置好,先实现手动构建(立个小目标) 一,安装jenkins插件 首页->系统管理->插件管理,从“ ...
- pytest+allure(allure-pytest基于这个插件)设计定制化报告
一:环境准备 1.python3.6 2.windows环境 3.pycharm 4.allure-pytest 5.allure2.8.0 6.java1.8 allure-pytest快速安装 在 ...
- pytest+allure(pytest-allure-adaptor基于这个插件)设计定制化报告
一:环境准备 1.python3.6 2.windows环境 3.pycharm 4.pytest-allure-adaptor 5.allure2.8.0 6.java1.8 pytest-allu ...
随机推荐
- ERROR tool.ImportTool: Encountered IOException running import job: java.io.IOException: Cannot run program "hive": error=2, No such file or directory
原因是hive没有设置环境变量 1,vim /etc/profile (切换root用户) 2.source /etc/profile
- Postman入门
- IntelliJ IDEA(Ultimate版本)的下载、安装和WordCount的初步使用(本地模式和集群模式)
不多说,直接上干货! IntelliJ IDEA号称当前Java开发效率最高的IDE工具.IntelliJ IDEA有两个版本:社区版(Community)和旗舰版(Ultimate).社区版时免费的 ...
- Maven启用代理服务器访问
0.什么叫代理服务器? 代理服务器英文全称是(Proxy Server),其功能就是代理网络用户去取得网络信息.形象的说:它是网络信息的中转站. 代理服务器就好象一个大的Cache,这样就能显著提高浏 ...
- 生成对抗网络(GAN)
基本思想 GAN全称生成对抗网络,是生成模型的一种,而他的训练则是处于一种对抗博弈状态中的. 譬如:我要升职加薪,你领导力还不行,我现在领导力有了要升职加薪,你执行力还不行,我现在执行力有了要升职加薪 ...
- 揭开Future的神秘面纱——结果获取
前言 在前面的两篇博文中,已经介绍利用FutureTask任务的执行流程,以及利用其实现的cancel方法取消任务的情况.本篇就来介绍下,线程任务的结果获取. 系列目录 揭开Future的神秘面纱—— ...
- python学习: 优秀Python学习资源收集汇总--转
Python是一种面向对象.直译式计算机程序设计语言.它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用縮进来定义语句块.与Scheme.Ruby.Perl ...
- java中类的加载顺序介绍(ClassLoader)
转自:http://blog.csdn.net/eff666/article/details/52203406 1.ClassNotFoundExcetpion 我们在开发中,经常可以遇见java. ...
- Autofac和nopcommerce中的Autofac, 还有反射
随笔分类 - Ioc Ioc容器Autofac系列(3)-- 三种注册组件的方式 摘要: 简单来说,所谓注册组件,就是注册类并映射为接口,然后根据接口获取对应类,Autofac将被注册的类称为组件. ...
- SQl常用语句总结(持续更新……)
创建示例数据库 USE master; GO IF DB_ID (N'mytest') IS NOT NULL DROP DATABASE mytest; GO CREATE DATABASE myt ...