python+selenium自动化框架的POM思想

时间:2020-04-17
本文章向大家介绍python+selenium自动化框架的POM思想,主要包括python+selenium自动化框架的POM思想使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

###################################

Selenium中使用POM的特点和优点?
1)  POM是一种设计模式,它能帮我们维护代码和减少代码的重复,这个在自动化测试领域是一个很重要的话题。
2)  在具体实施中,一个页面看做一个页面对象,每个页面写一个类。
3)  你可以把一个页面的元素的全部定位方式和该页面的业务操作方法写在一个类文件,然后在测试脚本类文件去调用页面类的元素和方法。
这样就有一个好处,你的软件产某一个界面出现了变化,你只需要修改对应页面的元素定位和相关方法,而不需要去修改你的测试脚本,
当然除非你这个页面由于需求问题,之后被砍了,你才要去修改你的测试脚本类。
4)  在POM中,我们把测试脚本和页面对象分层,例如页面对象统一放一个包下面,测试用例脚本统一放另外一个包下,到达测试脚本和页面对象分离。

########################################

##########################################

POM,中文:页面对象模型,POM是近几年非常流行的自动化测试模型,或者思想,POM不是框架,是解决问题的一种思想。
采用POM目的:为了解决前端中UI变化频繁,从而造成测试自动化脚本维护的成本越来越大
POM思路:把页面元素和业务逻辑和测试脚本分离开到两个不同的类文件。class A只写页面元素定位,和业务逻辑代码操作的封装,class B只写测试脚本,
不关心如何元素定位,只写调用class A的代码去覆盖不同的测试场景,如果前端页发生变化,只需要修改Class A的元素定位,而不需要去修改class B中的测试脚本代码。
POM主要有以下优点:
1. 把web ui对象仓库从测试脚本分离,业务代码和测试脚本分离。
2. 每一个页面对应一个页面类,页面的元素写到这个页面类中。
3. 页面类主要包括该页面的元素定位,和和这些元素相关的业务操作代码封装的方法。
4. 代码复用,从而减少测试脚本代码量。
5. 层次清晰,同时支持多个编写自动化脚本开发,例如每个人写哪几个页面,不影响他人。
6. 建议页面类和业务逻辑方法都给一个有意义的名称,方便他人快速编写脚本和维护脚本。

######################################

原文地址:https://www.cnblogs.com/andy0816/p/12721761.html