使用HTMLTestRunner可以生成测试报告。HTMLTestRunner是unittest模块下的一个拓展,原生的生成报告样式比较丑,GitHub上有大佬优化过后的版本:GitHub地址。下载之后解压应该是这样的

​

我们需要使用的是HTMLTestRunnerCN.py和EN.py 这两个。一个生成的是中文报告,一个生成的是英文报告。想用哪个版本的就把对应版本的.py文件复制到pytho3安装目录下的Lib文件夹下。能import进来相应的文件就可以了。最下面两个test开头的.py文件是用来测试的。可以直接运行看下生成的报告是什么样子的

项目下新建一个report文件夹,项目结构如下

​

打开上篇文章中entrance.py文件,修改代码如下

import testsuites.test_baidu
import testsuites.test_baidu_new
import unittest
import getcwd
import os
import HTMLTestRunnerCN if __name__ == "__main__":
suite = unittest.TestSuite()
suite.addTest(testsuites.test_baidu.test_baidu('test_baisu'))
suite.addTest(testsuites.test_baidu_new.test_baidu_new('test_new'))
path = getcwd.get_cwd()
file_path = os.path.join(path,'report/xxxUI自动化测试报告.html')
fp = open(file_path,'wb')
runner = HTMLTestRunnerCN.HTMLTestReportCN(
stream = fp,
title = 'xxxUI自动化测试报告',
description = '报告中描述部分',
tester = '测试者'
)
runner.run(suite)
fp.close()

​

运行之后可以看到在report文件夹下生成了html文件。文件夹打开这个html文件

可以看到生成报告的效果,代码中的字段对照报告很容易看出来是哪些。懒得再说了

​

在类和测试函数的第一行添加注释块,里面可以写上功能说明,这样生成测试报告时用例集/测试用例那里也能看到对应的功能说明

测试函数中try...except,一定要raise异常。不raise执行失败了。测试报告会算在通过里面的,因为异常被处理了。可以自己把raise删了执行试下看下效果。

python3+selenium框架设计09-生成测试报告的更多相关文章

  1. python3+selenium框架设计02-自动化测试框架需要什么

    什么是自动化测试框架 自动化测试框架能够提供便利给用户高效完成一些事情,比如,结构清晰开发脚本,多种方式.平台执行脚本,良好的日志和报告去跟踪脚本执行结果. 关于自动化测试框架的定义有很多,在我大致理 ...

  2. python3+selenium框架设计10-发送邮件

    使用python3的email模块和smtplib模块可以实现发送邮件的动能.email模块用来生成email,smtplib模块用来发送邮件,接下来看如何在生成测试报告之后,并将报告放在邮件附件中并 ...

  3. python3+selenium框架设计01-Page Object

    页面对象模型Page Object Modal是一种脚本设计模型,将页面元素,业务操作分割,当实际页面发生变化的时候,只需要修改页面元素文件,业务操作不需要修改. 具体实现需要先写一个页面公共类,里面 ...

  4. python3+selenium框架设计03-封装日志类

    首先我们先来实现日志的功能,日志可以使用python3自带logging模块,不会的可以百度一下相关文章,也可以看我另外一篇文章Python3学习笔记24-logging模块 在封装日志类前,我们需要 ...

  5. python3+selenium框架设计07-unittest单元测试框架

    可以自行百度学习下单元测试框架,或者看Python3学习笔记26-unittest模块 在项目下新建一个entrance.py文件.并使用之前的测试用例进行演示.目前项目结构. ​ 在entrance ...

  6. python3+selenium框架设计06-编写POM测试用例

    之前我们已经把测试基类,配置文件操作,浏览器引擎类封装完成.接下来使用POM的设计思路来创建我们的测试用例.接下来看一个实例,先在项目下新建pageobject文件夹.这个文件夹下放所有要测试的页面类 ...

  7. python3+selenium框架设计04-封装测试基类

    在完成了日志类封装之后,那我们就要对测试基类进行实现,在其中对一些请求再次封装,在项目下新建一个framework文件夹,在文件夹下新建Base_Page.py文件,这是用来写测试基类的文件.在项目下 ...

  8. python3+selenium框架设计08-进一步实现POM

    之前都是只有一个页面,一个用例.这次两个页面.两个测试用例.其实界面自动化测试最大的难点在于driver的传递,需要保持唯一性.另外就是断言的难点. 修改之前的BaiduPage,新增部分代码 fro ...

  9. python3+selenium框架设计05-配置文件和浏览器引擎类

    python3配置文件的增删改查等操作可以使用内置的ConfigParser模块,可以自行百度学习,也可以看Python3学习笔记27-ConfigParser模块 配置文件一般存放着环境信息,比如u ...

随机推荐

  1. linq总结系列(一)---基础部分

    一.linq的基本概念 LINQ是C#和VB中的统一查询语法,使用对象来保存和检索来自不同来源(如数据库.xml.对象集合)的数据. 主要功能:消除了编程语言和数据库之间的不匹配,以及为不同类型的数据 ...

  2. Golang入门教程(三)beego 框架安装

    beego 是一个快速开发 Go 应用的 HTTP 框架,他可以用来快速开发 API.Web 及后端服务等各种应用,是一个 RESTful 的框架,主要设计灵感来源于 tornado.sinatra ...

  3. cxf与spring的整合

    cxf与spring的整合: 一:服务端相关配置(配置好后启动tomocat就自动发布了接口,浏览器打开验证下) 1:导入cxf以及spring的相关jar包; 2:在web.xml中增加配置: 代码 ...

  4. python模块之自定义模块

    模块概述 到此之前,我们都是在一个py文件里操作,接下来,我们学习模块的内容,可以从其他文件引入内容(如函数等) 1. 什么是模块 一个py文件就是一个模块,模块是一些相似功能的集合体 2. 为什么要 ...

  5. maven打包可执行jar文件运行报错

    起因 项目中同时依赖了Spring和MyBatis,并使用mybatis-spring集成MyBatis和Spring. 使用maven打包为可执行jar文件运行,打包插件为:maven-shade- ...

  6. WEBGIS网页崩溃问题分析

    加载某一地区的系统页面时,过了几十秒,页面空白.曾经捕获到是WMTS服务异常的问题.本人推测可能是底图服务停止,使得WMTS服务无法进行而抛出的异常. 为了证实自己的猜想,鄙人对一个正常的系统,修改为 ...

  7. parseDouble()方法

    String a = "269"; double parseDouble = Double.parseDouble(b); System.out.println(“Double a ...

  8. HIbernate处理数据更新丢失

    使用乐观锁的机制处理: 第一步: 在持久类中添加version属性,并且添加对应的get.set方法; 第二步: 在全局配置文件中配置节点<version name="version& ...

  9. springboot10-springcloud-eureka 服务注册与发现,负载均衡客户端(ribbon,feign)调用

    创建5个项目: 1.服务注册中心 2.服务提供者1 3.服务提供者2(与服务提供者1的代码实现一样,这是是为了模拟负载均衡) 4.ribbon客户端项目 5.feign客户端项目 如图: 一.注册中心 ...

  10. 20155324 2016-2017-2 《Java程序设计》第1周学习总结

    20155324 2016-2017-2 <Java程序设计>第1周学习总结 教材学习内容总结 1.1.1 前世今生 Java最早是Sun公司绿色项目Green Project中撰写Sta ...