python UI自动化实战记录十:执行测试及测试报告
使用简单的unittest.TextTestRunner。
思路:
1 在report目录下创建当日测试报告目录 20190113
2 创建测试报告文件 f = 时间戳.txt
3 加载测试集,运行测试,测试结果unittest.TextTestRunner(stream=f)保存到文件中
项目目录下新建run_test.py文件,写入代码:
# coding:utf-8 import unittest
from testcase import testcase_index,testcase_strategy
from read_config import EnvConfig
import os
from datetime import datetime def create_report_file(filetype='txt'):
"""
生成测试目录和测试文件
:return: 测试文件路径
"""
today = datetime.now().strftime('%Y%m%d') # 当日
nowtime = datetime.now().strftime('%H%M%S%f') # 当前时间戳 reportdir = EnvConfig.reportpath # 配置文件写的测试报告总目录
reporttodaydir = os.path.join(reportdir,today)
if not os.path.exists(reportdir): # 测试报告总目录不存在则新建目录
os.mkdir(reportdir)
if not os.path.exists(reporttodaydir): # 测试报告当日目录
os.mkdir(reporttodaydir)
filepath = os.path.join(reporttodaydir,'TestReport'+nowtime+'.'+filetype) # 测试报告文件绝对路径
return filepath """测试报告目录及测试报告文件"""
reportfile = create_report_file() """加载测试集"""
suite1 = unittest.defaultTestLoader.loadTestsFromModule(testcase_index) # 页面1用例
suite2 = unittest.defaultTestLoader.loadTestsFromModule(testcase_strategy) # 页面2用例
testsuite = unittest.TestSuite([suite1,suite2]) # suite = unittest.TestSuite()
# suite.addTests(suite2)
"""运行测试集"""
with open(reportfile,'w') as f:
runner = unittest.TextTestRunner(stream=f,verbosity=2)
runner.run(testsuite) # runner.run(suite)
生成的测试报告目录:

the end!
python UI自动化实战记录十:执行测试及测试报告的更多相关文章
- python UI自动化实战记录五:测试页面2 pageobject
该部分记录测试页面2-StrategyPage,所有页面2上的元素定位.操作.获取属性等方法都写在该类中. 1 页面2继承自BasePage: 2 页面2第一部分写的是所有的定位器 3 页面2第二部分 ...
- python UI自动化实战记录四:测试页面1-pageobject
该部分记录测试页面1-IndexPage,所有首页上的元素定位.操作.获取属性等方法都写在该类中. 1 首页类继承自BasePage 2 首页类第一部分写的是所有的定位器 3 首页类第二部分类的方法, ...
- python UI自动化实战记录一:测试需求与测试思路
测试需求: 项目包含两个数据展示页面,数据均来自于四个数据源接口. 测试操作步骤: 选择5个大类型中的一个,每个大类型下有3个子类型,选择任一子类型,页面数据更新.需验证页面上的数据与数据源接口数据一 ...
- python UI自动化实战记录七:页面2用例编写
使用python自带的unittest测试框架,用例继承自unittest.TestCase类. 1 引入接口类和页面类 2 setUp函数中打开页面,定义接口对象 3 tearDown函数中关闭页面 ...
- python UI自动化实战记录六:页面1用例编写
使用python自带的unittest测试框架,用例继承自unittest.TestCase类. 1 引入接口类和页面类 2 setUp函数中打开页面,定义接口对象 3 tearDown函数中关闭页面 ...
- python UI自动化实战记录三:pageobject-基类
脚本思路: 使用pageobject模式,写一个basepage基类,所有页面的通用方法封装到基类中.比如打开页面,关闭页面,等待时间,鼠标移到元素上,获取单个元素,获取一组元素,获取元素的子元素,截 ...
- python UI自动化实战记录二:请求接口数据并提取数据
该部分记录如何获取预期结果-接口响应数据,分成两步: 1 获取数据源接口数据 2 提取后续页面对比中要用到的数据 并且为了便于后续调用,将接口相关的都封装到ProjectApi类中. 新建python ...
- python UI自动化实战记录十一: 总结
首先说说为什么想起来用自动化脚本来实现该项目的自动化. 工作还是以手工测试为主,业务驱动型的项目大概就是这样,业务不停地变,不断的迭代. 自动化测试实施的先决条件: 一 得有时间. 如果有时间大部分的 ...
- python UI自动化实战记录八:添加配置
添加配置文件写入测试地址等,当环境切换时只需修改配置文件即可. 1 在项目目录下添加文件 config.ini 写入: [Domain] domain = http://test.domain.cn ...
随机推荐
- Python基础(1) - 初识Python
Python 特点: 1)面向对象 2)解释执行 3)跨平台.可移植 4)垃圾回收机制 5)动态数据类型.强类型 6)可扩展.可嵌入 Python可以方便调用C/C++等语言,同时也可以方便的被C/C ...
- codeforces 675 C ——Money Transfers——————【思维题】
Money Transfers time limit per test 1 second memory limit per test 256 megabytes input standard inpu ...
- 架构实战项目心得(六):后台服务nosql数据库mongodb
一.架构介绍 mongodb有几种部署方式,这里采用的是副本集架构(Replica Set). 为了防止单点故障就需要引副本(Replication),当发生硬件故障或者其 ...
- Silverlight & Blend动画设计系列七:模糊效果(BlurEffect)与阴影效果(DropShadowEffect)
模糊效果(BlurEffect)与阴影效果(DropShadowEffect)是两个非常实用和常用的两个特效,比如在开发相册中,可以对照片的缩略图添加模糊效果,在放大照片的过程中动态改变照片的大小和模 ...
- js获取span标签的值
<!DOCTYPE html> <html lang="en"><head> <meta charset="UTF-8" ...
- mongodb-mms安装
mms是mongo集群监控软件. mms非常吃内存,虚拟机测试时,3G内存启动成功一次,之后重启时失败,建议不少于4G内存. MMS下载地址: https://downloads.mongodb.co ...
- 互联网轻量级框架SSM-查缺补漏第五天
简言:这个地方我就草草过了,NBA圣诞大战,偷偷看比赛,真香~ 第五章映射器 5.2select元素 自动映射和驼峰映射:MyBatis提供了自动映射功能,在默认的情况下自动映射功能是开启的. 在se ...
- javaweb之请求的转发和重定向
1.什么是请求转发和请求重定向? 请求转发: xxServlet收到请求,然后直接转发给yyServlet,然后yyServlet返回给客户端.整个过程中,客户端发出一个请求,收到一个响应. 重定向: ...
- PL/SQL: numeric or value error: character to number conversion error
在最简单的plsql块编程中出现这个错误,是因为 DBMS_OUTPUT.PUT_LINE('the x is '+x);这里面不能用“+”,而是要用“||” DECLARE x number; ; ...
- mybatis整合spring的时候配置数据库信息文件properties注意事项
信息后面不能有空格 ,格式要xxx.driver xxx.url 这样