Page Object Model:
PO设计模式是selenium自动化测试中最佳的设计模式之一,主要体现在对界面交互细节的封装,也就是在实际测试中只关注业务流程就OK了
传统的设计中,在新增测试用例之后,代码会有以下几个问题:
1.易读性差:一连串的find element会使代码显得杂乱无章
2.可扩展性不好:用例孤立,无法扩展
3.可复用性差:无公共方法,很难复用
4.可维护性差:一旦元素变化,需要维护修改大量测试用例
因此考虑到优化:
PO模式是一种自动化测试设计模式,讲页面定位和业务操作分开,也就是把对象的定位和测试脚本分开,从而提供可维护性。
首先抽象封装一个BasePage类,这个基类拥有一些指向Webdriver实例的属性,然后每一个Page继承基类BasePage,可以通过driver管理每一个Page中的元素,而且在Page中将这些操作封装为一个一个的方法。TestCase继承unittest里面的TestCase类,并且依赖page类,进行组织测试步骤的工作。
这样做的好处,就是有元素变化,只需要维护每一个Page就行了,测试步骤变化,只需要维护TestCase即可
实例参考:
https://www.cnblogs.com/bigbigtong/p/10294516.html
https://blog.csdn.net/qq_22820783/article/details/85090449