在此过程中,得到一份流传甚广的轻量级自动化测试框架(Qtp),花了一个礼拜时间断断续续看一下,受益匪浅。
因为同样理由得到这份自动化测试框架的同仁应该也有不少,节省大家时间,也避免自己以后回过头来看又一头雾水,大概做一下记录吧。
此轻量级自动化测试框架的特点主要有以下几点
1.使用Vbs的Function代替Qtp脚本中的Action。直接减少QTP脚本的数量
2.使用单一QTP脚本入口,冗余文件很少
3.所有用例需要用到的测试数据都储存在一个或多个Excel中,方便更改维护
4.每一个单独的业务流程即是一个Class,方便脚本的维护和升级
5.因为相关的测试用例都使用Function代替,所以这个框架在一定程度上是通用的。
相关脚本可以自行在网上搜索“轻量级自动化框架”
脚本结构
脚本主要使用数个类进行层级架构,从规格来看,每个类都包括2个方法:
1.init*方法:读取指定的excel文件,从其中提取合乎规格的数据,生成一个数组对象
2.start*方法:生成一个数组对象,使其等于init方法中生成的数组对象,再建立一个下级类的对象,分别以得到的数组对象中的各个项为参数调用下级类中的start方法
以TestProject类举例来说:InitTestProject方法读取指定的excel文件,该文件格式如下
则InitTestProject生成了一个数组对象,数组对象的格式为(大意)
然后,start方法生成一个数组对象,并使其与InitTestProject生成的对象相等。然后再生成下级类TesSet的对象,反复调用其start*方法,每次都将数组中的一行以参数传递。
为方便理解,再全面解析一下:
例如,当前我们以下几个excel文件(可对照下载的样例)
testsets文件:该文件保存各个测试用例的名称及其所在excel文件名,以及对应测试用例所在的sheet名
(图1)
189test.xls文件:该文件保存指定测试用例及其测试数据,结合上图,即第3行的测试用例