Pytest模式执行python脚本不生成allure测试报告

1.安装allure

下载allure的zip安装包
将allure.zip解压到python的lib目录中
将allure的bin路径添加到环境变量path中(注意:配置环境变量后,一定要重启电脑。因为环境变量没生效,我搞了半天在pycharm不能生成报告,在cmd中可以生成报告)
安装allure-pytest,命令为:  pip install allure-pytest

2.验证是否安装成功

  方法一:在cmd中输入 allure -v

方法二:在pycharm中输入 allure(输入环境变量没有生效,这里是不会有信息的)

 3.踩坑一:在pycharm中,pytest程序运行成功,没有生成allure报告,运行结果如下图

出现这个原因是环境变量没有生效,重启电脑后可以生成报告。

打开项目所在路径,在命令行输入命令可以生成allure报告

命令1(运行程序,生成报告):pytest test_food.py --alluredir ../report/tmp

pytest py文件名  --alluredir 生成报告文件的临时目录

命令2(启动服务,查看报告临时文件):allure serve ../report/tmp

allure serve  生成报告文件的临时目录

踩坑二:pycharm运行,生成的allure报告没有数据

原因:生成报告的源文件目录写错了

pytest.main(['test_food.py','-s','--alluredir','../report/tmp'])

os.system('allure generate ../report/tmp -o ../report/html --clean')#../report/tmp 为存放报告的源文件目录

4.allure生成报告的几种命令

1、生成测试报告数据
pytest test_food.py --alluredir ../report/tmp

2、测试报告在线预览

allure serve  ../report/tmp
3、测试报告本地静态数据生成

allure generate ../report/tmp -o ../report/html --clean
问题描述:在pychram中执行python脚本时,脚本执行成功,但是没有生成allure测试报告(报告的文件和内容都没有)。

但是通过cmd命令行的形式执行生成报告的命令,可以生成测试报告。后来在main函数下增加一句print('测试打印')的脚本,执行后发现并没有打印该信息。

经过一番百度后,发现:

(1)使用pytest测试框架运行时,不需要main()函数,系统可以自动识别测试用例并执行。

(2)即使包含main()函数,点击它去执行,也不会去执行main()函数。
(3)具体是使用哪个测试框架执行,如下图:

(4)将运行模式改为Unittests后就可以执行main()函数生成测试报告了。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

在这里插入图片描述

软件测试面试小程序

被百万人刷爆的软件测试题库!!!谁用谁知道!!!全网最全面试刷题小程序,手机就可以刷题,地铁上公交上,卷起来!

涵盖以下这些面试题板块:

1、软件测试基础理论 ,2、web,app,接口功能测试 ,3、网络 ,4、数据库 ,5、linux

6、web,app,接口自动化 ,7、性能测试 ,8、编程基础,9、hr面试题 ,10、开放性测试题,11、安全测试,12、计算机基础

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!   

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/75391.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

自学Python06-学会Python中的while循环语句

#通过while可以设计一个重复运行的内部程序空间并且可以设置一个条件让程序是否结束 x1 while x<20:#设置一个条件&#xff0c;只要满足该条件就执行print(x)x1# if x>15:# breakif x%20:continue# continue的意思是如果生效&#xff0c;则直接返回到while开头执行&a…

Swift页面添加水印

本文主要讨论的是给图片或者视图添加全屏水印。比较常见的是添加单个水印,这个比较好处理,网络上也有很多参考的方法。本文实现的是铺满的全屏水印,具体参考效果如下: 实现思路: 1、根据水印文本以及相应样式生成水印图片,水印图大小根据文本计算而来 2、生成需要铺满水…

SpringBoot【基础篇】

一、快速上手 按照要求&#xff0c;左侧选择web&#xff0c;然后在中间选择Spring Web即可&#xff0c;选完右侧就出现了新的内容项&#xff0c;这就表示勾选成功了 关注&#xff1a;此处选择的SpringBoot的版本使用默认的就可以了&#xff0c;需要说一点&#xff0c;SpringBo…

PHPWord 模板输出checkbox复选框和checked已勾选状态,以及 模板替换时数据如何分行

PHPWord 模板输出checkbox复选框和checked已勾选状态,以及 模板替换时数据如何分行 期望目标 和 模板配置复选框代码数据分行显示在使用PHPWORD模板替换时,经常会有 动态渲染选择项 和 选择项需要被勾选的要求,以及动态数据分行显示等要求。 本文根据 空复选框、勾选复选框…

vim 替换命令 “:s“

vim 替换命令 ":s" 1. 替换光标所在行的第一个匹配串2. 替换光标所在行全部匹配项3. 替换两行之间每行的第一个匹配项4. 替换两行之间的全部匹配项5. 替换整个文件中的每个匹配串6. 查找整个文件中的每个匹配串并询问是否替换 1. 替换光标所在行的第一个匹配串 命令…

[Linux 基础] linux基础指令(1)

文章目录 1、Linux下基本指令1.ls指令2.pwd指令3.cd指令4.touch指令5.mkdir指令6.rmdir指令 && rm指令7.man指令8.cp指令9.mv指令10.cat指令11.more指令12.less指令 Linux学习笔记从今天开始不断更新了。第一篇我们从基础指令开始学起。 1、Linux下基本指令 好多人都说…

创建开机自启的脚本

在启动许多ros节点时有多种方式&#xff0c;我推荐使用launch来启动所有的节点&#xff0c;这也是一种规范的方式。以后会慢慢向这个方向靠。 除此之外还可以通过创建的脚本来启动&#xff1a; 脚本位置不限&#xff0c;只需要&#xff1a; sudo gedit xxx.sh在里面添加相应的…

Jetsonnano B01 笔记2:GPIO库-Pycharm远程调试-点灯

今日继续我的Jetsonnano 学习之路,今日主要学习使用Pycharm远程调试Jetsonnano以及驱动使用Jetsonnano的GPIO库&#xff0c;最终尝试使用jetson点亮第一个LED。 本文搬运成分较多&#xff0c;因为Jetsonnano资料比较少&#xff0c;做这些笔记方便自己以及大家查阅。 目录 一…

第13章_瑞萨MCU零基础入门系列教程之Common SPI

本教程基于韦东山百问网出的 DShanMCU-RA6M5开发板 进行编写&#xff0c;需要的同学可以在这里获取&#xff1a; https://item.taobao.com/item.htm?id728461040949 配套资料获取&#xff1a;https://renesas-docs.100ask.net 瑞萨MCU零基础入门系列教程汇总&#xff1a; ht…

QT(9.4)tcp通信,数据库,opencv,

作业&#xff1a; 1.服务器 头文件&#xff1a; #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QTcpSocket>//客户端头文件 #include <QMessageBox>//消息对话框头文件 #include <QTcpServer>//服务器头文件 #include <list>…

Linux修复损坏的文件系统

如何判断文件系统是否损坏 当文件系统受损时&#xff0c;将会出现一些明显的迹象。例如&#xff0c;文件或文件夹无法访问、文件大小异常、系统启动慢或无法启动等。此外&#xff0c;系统也可能发出一些错误信息&#xff0c;如"Input/output error"、"Filesyst…

Acwing算法心得——现代艺术(统计遍历)

大家好&#xff0c;我是晴天学长&#xff0c;先用两个一维数组维护数据&#xff0c;再统计遍历二维数组&#xff0c;需要的小伙伴请自取哦&#xff01;&#x1f4aa;&#x1f4aa;&#x1f4aa; 1 &#xff09;现代艺术 2) .算法思路 现代艺术 1.两个数组维护行和列 2.遍历数组…

Oracle LiveLabs实验:探索 Oracle 23c 数据库的强大功能 - 架构权限和无锁预留

使用申请地址见这里。 实验帮助见这里。 7小时45分 欢迎来到 Live Labs&#xff0c;我们在这里探索并深入研究 Oracle 数据库管理的迷人领域&#xff01; 在今天的会议中&#xff0c;我们将重点讨论两个有趣的主题&#xff1a;Oracle 架构级权限和无锁列保留。 架构级别权限…

Python-函数

str1 "asdasdasd" str2 "asfgrbbtnyjyuktuyjyder" str3 "adsf3t4tykuikjdrg"def my_len(str):count 0for i in str:count 1print(count)my_len(str1) my_len(str2) my_len(str3) 函数的定义&#xff1a; def 函数名(传入参数)&#xff1a;…

偷录的录音、视频能否成为“呈堂证供”?

很多人都说偷录的录音是无效的&#xff0c;其实是对法条的不及时跟新&#xff0c;因为《最高人民法院关于未经对方当事人同意私自录音取得的资料能否作为证据使用问题的批复》&#xff08;法复〔&#xff11;&#xff19;&#xff19;&#xff15;〕&#xff12;号&#xff09;…

AI在商业领域的多重应用:优化运营与提升客户体验

在商业领域&#xff0c;人工智能&#xff08;AI&#xff09;可以用于多种方式&#xff0c;从优化运营到改进客户体验。以下是一些使用AI的商业用例以及如何在商业环境中有效地使用AI的一些建议&#xff1a; 数据分析和决策支持&#xff1a; 使用AI算法来分析大规模数据集&#…

Spring框架简介

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

简明SQL条件查询指南:掌握WHERE实现数据筛选

条件查询是用于从数据库中根据特定条件筛选数据行的一种方式&#xff0c;它避免了检索整个表中的数据。通常&#xff0c;使用 WHERE 子句来定义过滤条件&#xff0c;只有符合这些条件的数据行才会被返回。 SQL中的运算符有&#xff1a;、!、<、> 等&#xff0c;用于进行…

小程序当前页面栈以及跳转

1.调用页面栈刷新接口 let pages getCurrentPages(); //当前页面栈 if (pages.length > 1) { let beforePage pages[pages.length - 2]; //获取上一个页面实例对象 beforePage.$vm.getActivityLi…

「网页开发|前端开发|Vue」06 公共组件与嵌套路由:让每一个页面都平等地拥有导航栏

本文主要介绍在多个页面存在相同部分时&#xff0c;如何提取公共组件然后在多个页面中导入组件重复使用来减少重复代码。在这基础上介绍了通过嵌套路由的方式来避免页面较多或公共部分较多的情况下&#xff0c;避免不断手动导入公共组件的麻烦&#xff0c;并且加快页面跳转的速…