Python+selenium自动化生成测试报告

news2024/11/25 5:03:55

批量执行完用例后,生成的测试报告是文本形式的,不够直观,为了更好的展示测试报告,最好是生成HTML格式的。

unittest里面是不能生成html格式报告的,需要导入一个第三方的模块:HTMLTestRunner


一、导入HTMLTestRunner

1.这个模块下载不能通过pip安装了,只能下载后手动导入,下载地址:http://tungwaiyip.info/software/HTMLTestRunner.html

2.Download下HTMLTestRunner.py文件就是我们需要下载的包。

3.下载后复制到Python安装文件的Lib目录下


二、生成html测试报告

1.这里主要有三个参数:

stream:测试报告写入文件的存储区域

title:测试报告的主题

description:测试报告的描述

2. report_path是存放测试报告的地址

 

运行脚本后在F盘指定位置就能找到这个测试报告文件,这时候如果文件多了,不知道测试报告在哪天生成的?能否在文件名上显示一个日期和时间呢?当然是可以的

备注:

%Y-%m-%d为年月日

%H-%M为时分  注意:时间之间不能使用冒号(:)因为文件名不能使用冒号


三、测试报告详情

1.找到测试报告文件,用浏览器打开,点开View里的Detail可以查看详情描述。

红框中内容显是英文,我们不能直观看出是什么测试用例,可以在测试代码中添加中文注释,注释前面要加字母u,代码修改如下:


四、再次运行run_all_case脚本文件后,查看HTML测试报告

 


2.5 unittest断言

Python在 unittest.TestCase 类中提供了很多断言方法。断言方法检查你认为应该满足的条件是否确实满足。如果该条件确实满足,你对程序行为的假设就得到了确认,你就可以确信其中没有错误。如果你认为应该满足的条件实际上并不满足,Python将引发异常。下表描述了6个常用的断言方法。使用这些方法可核实返回的值等于或不等于预期的值、返回的值为 True 或 False 、返回的值在列表中或不在列表中。你只能在继承 unittest.TestCase 的类中使用这些方法。

unittest常用的断言方法

方法

用途

assertEqual(a, b)

核实 a == b

assertNotEqual(a, b)

核实 a != b

assertTrue(x)

核实 x 为 True

assertFalse(x)

核实 x 为 False

assertIn( item ,  list )

核实 item 在 list 中

assertNotIn( item ,  list )

核实 item 不在 list 中

三、unittest常用的断言方法

1.assertEqual(self, first, second, msg=None)

--判断两个参数相等:first == second

2.assertNotEqual(self, first, second, msg=None)

--判断两个参数不相等:first != second

3.assertIn(self, member, container, msg=None)

--判断是字符串是否包含:member in container

4.assertNotIn(self, member, container, msg=None)

--判断是字符串是否不包含:member not in container

5.assertTrue(self, expr, msg=None)

--判断是否为真:expr is True

6.assertFalse(self, expr, msg=None)

--判断是否为假:expr is False

7.assertIsNone(self, obj, msg=None)

--判断是否为None:obj is None

8.assertIsNotNone(self, obj, msg=None)--判断是否不为None:obj is not None

实例:assertEqual(a, b),其它的断言方法请自行偿试)


 总结:

Web自动化测试全套实战教程:Python+Selenium4环境搭建

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

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

相关文章

springboot如何接入netty,实现在线统计人数?

springboot如何接入netty,实现在线统计人数? Netty 是 一个异步事件驱动的网络应用程序框架 ,用于快速开发可维护的高性能协议服务器和客户端。 Netty ​ 是一个 NIO 客户端服务器框架 ​,可以快速轻松地开发协议服务器和客户端等…

使用富斯i6遥控器设置6种飞行模式

使用富斯i6遥控器设置6种飞行模式 将富斯i6遥控器的SWC和SWD分别设置为ch5和ch6,然后使用混控功能设置6段开关,以实现6种飞行模式 一、设置辅助通道 进入系统菜单,选择 Functions Setup 选项,进入 Aux. channels 进行设置。将 Channel 5设置为 SwC,Channel 6 设置为 Sw…

CompletableFuture-CompletionStage接口源码分析和四大静态方法初讲

2.3 CompletableFuture对Future的改进 2.3.1 CompletableFuture为什么会出现 get()方法在Future计算完成之前会一直处在阻塞状态下,阻塞的方式和异步编程的设计理念相违背。 isDene()方法容易耗费cpu资源(cpu空转), 对于真正的…

SpringBoot @value注解动态刷新

参考资料 Spring系列第25篇:Value【用法、数据来源、动态刷新】【基础系列】SpringBoot配置信息之配置刷新【基础系列】SpringBoot之自定义配置源的使用姿势【基础系列】SpringBoot应用篇Value注解支持配置自动刷新能力扩展Spring Boot 中动态更新 Value 配置 一. …

完成“重大项目”引进签约,美创科技正式落户中国(南京)软件谷

近日,美创科技正式入驻中国(南京)软件谷,并受邀出席中国南京“金洽会"之“雨花台区数字经济创新发展大会”。美创科技副总裁罗亮亮作为代表,在活动现场完成“重大项目”引进签约。 作为国家重要的软件产业与信息服…

Redis之set类型

文章目录 Redis之set类型1. 添加元素/获取集合中的所有元素/获取集合中元素个数2. 删除元素3. 判断元素是否在集合中3. 从集合中随机弹出一个元素,元素不删除4. 从集合中随机弹出元素,出一个删一个5. 将元素从一个集合转移到另外一个集合6. 集合的差集7.…

周记之重新开始

对于这周的学习,我进行了深刻的反思: 先来说说每天做了什么: 9.18号:把这个顶部的个人信息画出来了;然后记了两个单词(这是能说的吗,这两个单词还是之前复习的)现在都记忆犹新&…

31.下一个排列

方法:两遍扫描 举例: 4 5 2 6 3 1排列中较小数为2,较大数为3,交换两者得:4 5 3 6 2 1,将[i1,n)区间改成升序:得下一个排列: 4 5 3 1 2 6。 若第一步找不到较小数,即当前排…

基础算法--区间合并

区间合并简介 区间合并模型是一种竞赛里比较常见的模型,他的含义是,给你n个区间,要你合并所有有交集的区间,并求出合并后剩下的区间个数,如区间[1, 4]和[2, 3]可以合并成[1, 4],但是[1, 2] 和 [3, 4] 不可…

SLAM从入门到精通(rviz的使用)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 在ros开发当中,rviz和tf都是用的比较多的一个工具。前者是为了实现传感器数据和计算结果的可视化,后者主要是为了显示各个传…

深度学习中什么是embedding

使用One-hot 方法编码的向量会很高维也很稀疏。假设我们在做自然语言处理(NLP)中遇到了一个包含2000个词的字典,当使用One-hot编码时,每一个词会被一个包含2000个整数的向量来表示,其中1999个数字是0,如果字典再大一点&#xff0c…

华为云云耀云服务器L实例评测|华为云上安装etcd

文章目录 华为云云耀云服务器L实例评测|华为云上安装etcd一、什么是etcd官方硬件建议 二、华为云主机准备三、etcd安装1. 安装预构建的二进制文件2. 从源代码构建 四、etcd服务注册与发现1. 配置etcd2. 使用systemctl 管理启动etcd服务3. 注册服务4. 发现服务 五、其…

python+opencv神经网络风格迁移--你也可以拥有梵高一样的画作

梵高画作 什么是神经网络的风格迁移,简单来件就是输入1张照片(自己的照片),输出具备另外一张照片(例子梵高画作)风格的图片,同时保留原本自己图片的元素,如下图片表明了神经网络风格迁移的过程,当然你也可以使用自己的神经网络训练自己的模型,本期教程利用了已经训练…

macOS使用官方安装包安装python

新手程序员可能想知道如何在 Mac 上正确安装 Python,这里介绍在 macOS 上安装 Python 的方法。 操作步骤 1.从 Python 官方网站 (python.org) 下载最新的 Python 版本. 单击 macOS 链接并选择最新的 Python 版本。 2.下载完成后,双击包开始安装Python…

使用 Ruby 语言来解析开放文档格式 OOXML 文件

在这篇文章中,我们将了解一个开发团队如何解决他们在应用程序中解析数据时遇到的问题。 为了测试 ONLYOFFICE 文档编辑器,我们用Ruby语言开发编写了个docx、xlsx、pptx文件解析器程序,它是免费开源的,被我们放在GitHub和RubyGems…

python运算函数

简 python输入输出函数input() :用户用于读取键盘输入的函数,返回值为“string”类型 运算函数abs(x) :x的绝对值int(x) :将x转换成整型(截掉小数部分)float(x):浮点数divmod(x,y):返回(x//y,x%y)complex(re,im):返回一…

A股风格因子看板 (2023.09 第08期)

要点预告:10月,天软课堂将添加新主题--天软超高频行情数据。针对市场上高频行情数据处理业务的相关痛点,直观的在线演示如何通过天软高频数仓及高性能计算能力,将其逐个击破,期待各位老师的参会。请持续关注天软课堂动态&#xff…

企业架构LNMP学习笔记60

Tomcat企业常见使用方法&#xff1b; 1&#xff09;简单代码测试&#xff1a; 将两个jsp文件上传到ROOT目录下。 查看下这个jsp代码&#xff1a; test.jsp <html> <head><title>Hello World</title> <% page language"java" contentT…

短视频矩阵系统,短视频矩阵源码技术

1、抖音开放平台申请账号&#xff0c;快手平台申请账号&#xff1b;阿里云混剪接口。 2、系统总台支持OEM代理&#xff0c;可以按点数管理。 3、代理功能。包括是否允许再次开二级代理、是否允许OEM等。 4、可支持一条龙搭建服务&#xff0c;抖音平台开放平台代申请等 开发…