问题:
因为流程相对比较复杂,所以关键字调用内容很多?
课程回顾:
1. 基于Yaml数据驱动结合UnitTest+测试报告实现一整套UI测试框架
作业:
如果说用例执行的是Excel的直接读取操作,文件的读写操作,那么报错会难以通过用例的测试报告去查看情况
yaml本身是提供测试数据的。不需要考虑到处理yaml的逻辑
自动化测试用例和功能测试用例有区别么?
你写的用例别人能够看得懂。
yaml提供数据
UnitTest提供用例操作步骤
大家对于封装的使用时间和机会,依据个人能力来定的。
用例写的时候稍微勤快点
附加作业:喜欢封装的大佬们,想想如果报错,怎么处理?
PageObjectModel:
之前有了解关键字驱动,基于Selenium进行二次封装,生成实例化类,结合数据进行调用,实现测试流程
通过关键字驱动,降低代码冗余,提高代码维护性,应用在各类web系统中都可以通用,但是对于业务的契合需要依据测试用例来实现,想要解决自动化能够完整覆盖业务的场景,需要升级我们的模式。
目前业界好评最高的设计模型:POM或者是PO
基于页面来实现的设计模式,将每一个页面作为一个页面对象。基于对象实现对应的业务流程。
每一个系统核心业务流程是不是都是基于页面来实现的?
编程思维:低耦合高内聚
关键字驱动:
定义关键字类——测试用例——测试数据
PO:
基类(提供公共方法)——页面对象类——测试用例管理——测试数据
可以更好契合业务,各个页面都相对独立化
课后作业:
1. 实现商城的PO模型,定义好有关登录,购物车,商品搜索,注册,信息修改等一系列的自动化测试流程
备注:结合之前的所有模块一起用
下节课预告:
命令行运行python工程,实现文件读取和自动化执行。
options选项增加新的指令,辅助命令行运行
多线程并发测试用例
selenium 分布式环境部署与执行