自动化测试框架设计完成后,测试工程师将实现该框架。本文使用Python语句为例,介绍上述框架的实现过程与结果。
1.ECShop框架工程
启动PyCharm,点击“File”-“New Project”,进入创建工程界面,如图1。
图1创建ECShop工程包
Location输入工程名称即可。
2.common
将测试框架过程中可能需要用到的功能单独设计为公共函数,存放在common目录中,避免代码设计冗余。common目录创建时使用“Python Package”,不使用“Directory”。
Python Package:存放脚本类资源文件,便于其他脚本调用其中的函数功能。创建该类型目录时,会自动生成空文件__init__.py。
Directory:存放资源类文件,一般不涉及脚本文件。
(1)选中 “ecshop” 工程名称,右键,“New”- “Python Package”,出现图2。
图2创建Python Package
(2)输入 Package 名称,如“common”,点击【OK】完成创建。
common目录中根据敏捷开发团队的自动化测试框架设置,主要包含配置文档读取函数、浏览器启动函数、截图函数、日志生成函数、获取URL函数、HTML报告输出函数等。
1)配置文档读取函数
函数文件名:readconfig.py。将测试过程中需要的基本信息,利用ini格式的文件保存,根据框架需要加载对应数据,该函数可扩展,本次项目并未涉及,读者可自行调整。示例代码如下:
2)截图函数
函数文件名:cappic.py。如有需要,可将测试过程中需截图的地方截图,便于后期的缺陷、问题定位。代码如下:
3)日志生成函数
函数文件名:loggen.py。将执行过程中需监控的步骤通过日志输出的方法,保存在工程目录下的logs中。代码如下:
4)获取URL函数
函数文件名:geturl.py。因ECShop登陆、注册功能页面不在主页面,需调整到特定页面,因此需将URL提取出再根据需要组合。提取URL前缀代码如下:
5)HTML报告输出函数
函数文件名:HTMLTestRunner.py。如有需要,可集成HTML报告输出函数,将测试结果以HTML格式输出,读者可自行下载HTML报告处理函数HTMLTestRunner.py,添加在common目录下。
3.config
config目录创建时选择“Directory”格式,该目录存放配置文件,配置文件名称与readconfig函数中读取的文件名称一致,如config.ini,文件内容如下:
4.data
data目录创建时选择“Directory”格式,测试执行时所需的文件存放在此处,本次测试主要包括用户注册、用户登陆及测试集设计文件,均以EXCEL格式保存。
用户注册测试场景文件,名称userregister.xlsx,其内容如表1所示。
表1用户注册用例文件
用户注册测试场景文件是由多个测试用例组成,测试用例则由多个测试动作组成,测试用例表格有4列构成。
Page:表示当前测试步骤操作是在哪个页面执行,比如登陆是在loginpage中执行,对应的是Webdriver脚本中实现的Pageo Oject。
Step:对应到代码中是对象。
Data:代表将要用到在测试对象上的测试数据。
用户登陆测试场景文件,名称login.xlsx,其内容如表2所示。
表2用户登陆测试用例文件
所有测试业务是否执行测试,框架设计了一个集中处理的EXCEL配置文件testsuite.xlsx,如表 3所示。
表 3测试集配置文件
testsuite.xlsx保存在框架文件data文件夹下,表格由三列组成,第一列表示序号,无意义,第二列是脚本执行参数,控制是否执行对应的测试场景文件,“do”执行,“not”则不执行,测试场景文件login和userregister保存在框架文件夹的data目录下。
5.logs
logs目录创建时选择“Directory”格式,保存测试执行时所记录的日志文件。