20191011-构建我们公司自己的自动化接口测试框架-Util的ClearData模块
cleardata模块主要是用于在每次测试之前清除历史执行痕迹,主要代码如下:
from Util.ParseExcel import *
from ProVar.ProjConfigVar import *
from Util.Log import * def clear():
"""清除测试集,测试用例,断言表的上次执行数据"""
info("开始清除最后执行历史————————————————————————")
excel = Excel(ExceldirPath)
excel.set_sheet_by_index(1)
info("开始清除测试集%s" % excel.ws.title)
# 记录已经清除过的sheet
cleared = []
for row_a in excel.get_rows_values()[1:]:
# 清除测试集里面的执行历史
excel.set_sheet_by_index(1)
try:
# 清除执行结果
excel.write_cell_value(int(row_a[0])+1,Test_Suit_execute_result_col_no+1,"")
# 清除执行时间
excel.write_cell_value(int(row_a[0]) + 1, Test_Suit_execute_time_col_no + 1, "")
# 如果有测试集sheet,清除测试集对应的sheet
if not excel.set_sheet_by_name(row_a[Test_Suit_test_step_sheet_name_col_no]) or row_a[Test_Suit_test_step_sheet_name_col_no] in cleared :
continue
# 清除测试用例数据
cleared.append(excel.get_current_sheet_names())
info("开始清除测试用例%s" % excel.ws.title)
for row_b in excel.get_rows_values()[1:]:
# 清除执行返回结果数据
excel.write_cell_value(int(row_b[0]) + 1, Test_Case_executeResult_col_no + 1, "")
# 清除返回结果内容
excel.write_cell_value(int(row_b[0]) + 1, Test_Case_result_content_col_no + 1, "")
# 清除断结果数据
excel.write_cell_value(int(row_b[0]) + 1,Test_Case_assert_result_col_no+1,"")
# 清除提取的变量
excel.write_cell_value(int(row_b[0]) + 1, Test_Case_var_result_col_no + 1, "")
# 清除异常数据
excel.write_cell_value(int(row_b[0]) + 1, Test_Case_exception_col_no + 1, "")
# 清除执行时间
excel.write_cell_value(int(row_b[0]) + 1, Test_Case_execute_time_col_no + 1, "")
# 如果是以断言表格的形式断言结果,清除断言表格的执行结果数据
if not row_b[Test_Case_assert_content_col_no] or not excel.set_sheet_by_name(row_b[Test_Case_assert_content_col_no]) or row_b[Test_Case_assert_content_col_no] in cleared :
continue
cleared.append(excel.get_current_sheet_names())
# 清除断言数据
info("开始清除断言表%s" % excel.ws.title)
for row_c in excel.get_rows_values()[1:]:
# 清除断言结果
excel.write_cell_value(int(row_c[0]) + 1,Assert_result_col_no + 1,"")
# 清除执行时间
excel.write_cell_value(int(row_c[0]) + 1, Assert_time_col_no + 1, "")
except:
continue if __name__ == '__main__':
clear()
共计清除3个模块的数据,分别是测试集,测试用例,断言表3个模块进行清除
20191011-构建我们公司自己的自动化接口测试框架-Util的ClearData模块的更多相关文章
- 20191011-构建我们公司自己的自动化接口测试框架-Util的AssertResult模块
		AssertResult主要就是进行结果断言的了,因为断言结果分2种情况,一种是断言词,一种是断言sheet,如果涉及断言sheet,则需要操作excel到对应的断言表断言所有的字段并且书写断言结果主 ... 
- 20191011-构建我们公司自己的自动化接口测试框架-Util的TestDataHandler模块
		TestDataHandler模块主要是做测试数据的处理,包括转换数据格式和变量参数处理转换数据格式函数: data是数据,data以$()的方式识别变量,如果请求的数据有变量,则将变量用global ... 
- 20191011-构建我们公司自己的自动化接口测试框架-Util的getTestSuite模块
		getTestSuite主要是用于在testData里面获取测试集以及对应的测试数据,包括2个主要的方法,一个是获取测试集,一个是获取测试集里面要执行的测试用例 获取测试集方法: from Util. ... 
- 20191011-构建我们公司自己的自动化接口测试框架-Util的htmlreport模块
		生成htmlreport的模块是我在网上随意找的一个版本,主要生成的report包括接口名称,接口url,请求数据,响应数据,断言词,断言结果等 具体的htmlreport代码如下: # -*- en ... 
- 20191011-构建我们公司自己的自动化接口测试框架-Util的读取excel常用方法模块
		包括获取excel的sheet名字,设定excel的sheet,读excel,写excel等常规操作. from openpyxl import Workbook from openpyxl impo ... 
- 20191011-构建我们公司自己的自动化接口测试框架-Action的request方法封装
		Action模块 封装接口request方法,根据传入的参数调用不同的请求方法,因为项目特色,我们公司的接口都是get和post方法,所以仅仅封装了get和post方法: import request ... 
- 20191011-构建我们公司自己的自动化接口测试框架-testrun最重要的模块
		testrun模块呢就是最终自动化测试入口,调用前面封装的各个模块主要流程是: 1. 获取测试集种待执行的测试用例 2. 处理测试用例获取的数据,包括转换数据格式,处理数据的中的关联等 3. 处理完数 ... 
- 20191011-构建我们公司自己的自动化接口测试框架-ProVar模块
		ProVar模块主要定义测试数据所在目录,以及定义变量和测试数据excel里面的column对应这样后续在进行excel操作的时候直接使用变量即可进行操作,后期excel的column有增删的时候,修 ... 
- 20191011-构建我们公司自己的自动化接口测试框架-Config配置
		Config模块主要是为了存放的一些其他配置等的一个目录,当前目录存放日志配置文件 ################################################ [loggers] ... 
随机推荐
- Spring Cloud Gateway(五):路由定位器 RouteLocator
			本文基于 spring cloud gateway 2.0.1 1.简介 直接 获取 路 由 的 方法 是 通过 RouteLocator 接口 获取. 同样, 该 顶 级 接口 有多 个 实现 类, ... 
- 关于SQLServer 中行列互转的实例说明
			这几天在做一个招标系统中审批模块,其中关于报价信息这块,用到了pivot和unpivot来实现数据的行列互转,下面简单介绍一下,实际案例,便于回忆和记录相关的条件下使用的情况.pivot 与 unpi ... 
- 《Glibc内存管理》笔记DAY1
			目录 x86_64栈和mmap固定映射地址 内存的延迟分配 内核数据结构 mm_struct Heap 操作相关函数 Mmap 映射区域操作相关函数 内容来源 x86_64栈和mmap固定映射地址 ... 
- oracle查询表指定字段类型
			查询表某字段类型,如下: SELECT data_type FROM all_tab_cols WHERE table_name = UPPER('SRIS_P_BaseInfo') and colu ... 
- 手写一个MVVM
			最近看了珠峰的架构课——实现一个MVVM. 首先,我们来了解一下什么是MVVM. MVVM是Model-View-ViewModel的简写.它本质上就是MVC 的改进版.MVVM 就是将其中的View ... 
- RDD java API使用
			1.RDD介绍: RDD,弹性分布式数据集,即分布式的元素集合.在spark中,对所有数据的操作不外乎是创建RDD.转化已有的RDD以及调用RDD操作进行求值.在这一切的背后,Spark会自动 ... 
- android studio: 实现类似于XCode中的#pragma mark的效果
			代码行数写多了,想找一个指定的方法真困难,关键有时候记不住方法的名字,用Ctrl+O也不好使,突然想到以前做iOS开发时,XCode里有一个#pragma mark的功能,很好用:在代码中定义这样一个 ... 
- c# 遍历局域网计算机(电脑)获取IP和计算机名称
			c#可以遍历局域网计算机,获取全部计算机的名称和IP地址,网上提供了相关的几种方法,并对效率进行了比较,但是没有对各种方法进行比较,以确定可以使用的情况.这篇文章将对这几种方法进行分析,以帮助了解各种 ... 
- dapper 异步修改方法
			public async Task<int> UpdateStatusByWarehouseId(bool isValid, int warehouseId) { using (var c ... 
- bat命令编写大全
			bat命令编写大全 摘自:https://blog.csdn.net/haibo19981/article/details/52161653 2016年08月09日 12:26:31 爱睡觉的猫L 阅 ... 
