今天跟着网上教程学习了一种关键字模型设计的方法,做下总结。
目录
关键字驱动测试
又称为表驱动测试或基于动作字测试。这类框架会把自动化操作封装为‘关键字’,避免测试人员直接接触代码,多以‘填表格’的形式降低脚本的编写难度。
Robot Framework是主流的关键字驱动测试框架之一。
关键字模型设计
目标:简单实现一个百度搜索的关键字模型自动化测试脚本。
设计步骤:
新建四个Python Package和一个文件夹,分别存放4个py文件和一个excel文件:
- config包,创建data.xls文件,用来存放测试步骤。测试人员可以只维护这个文件来实现自动化测试,而不用直接接触代码。
- util包,excel_util.py文件, 用于解析Excel文件内容。
- base包,search_base.py文件,用于再次封装定位页面元素的方法,便于后面使用
- keywordselenium包,actionMethod.py文件,用来封装关键字
- case包,keyword_case.py文件,用来执行excel中的case,并写入执行结果。
处理excel的两个扩展包
xlrd和xlutils (注意:xlrd只支持xls格式的excel文件的写入,若用xlsx格式文件,写入后文件会打不开)
pip install xlrd
pip install xlutils
代码实现
data.xls文件
每一行是一条操作步骤,AB列可忽略,C列是想要实现的操作。
D列表示是否要执行自动化,E列是执行该条用例需要调用的实例方法(关键字)。
F列输入数据,比如搜索时要输入搜索关键字。
G列是具体要操作的元素,比如chrome是指要打开chrome浏览器,kw是百度搜索框的id。
H列是为了获取预期结果所要使用的实例方法。
I列是预期结果值,根据“=”左右两侧进行判断,比如“text=百度",是指获取浏览器title后,校验标题是否包含”百度“。”element=1"中1是百度搜索结果第一条数据的id,通过get_element方法判断第一条数据是否存在。
J列是执行完脚本后,填入