zoukankan      html  css  js  c++  java
  • Selenium的 PO模式是什么:Page Object Model

    PO模式:全称:Page Object Model 简称POM,叫做页面对象,针对页面、UI界面    (译:配只.奥播摘可t.毛豆)

    什么是Page Object Model 设计模式?

    • 相似功能地方:
      • 代码基本都是一样的,界面元素换个查找方式,把原来的使用 xpath方式,改为使用 id 查找,需要对每个用例脚本都要改,虽然几个用例看不出什么工作量,但是重复findElement的代码,已经让我们感到了代码的笨重。如果某些定位发生了改变,我们就得贯穿整个测试代码进行调整元素定位,这样就会导致我们的脚本在后期,难以维护。因此通过Page Object Model 我们可以创建更加健壮代码,并减少或者消除重复的测试代码,从而也能够提高代码的可读性,减少编写脚本的工作量。Page Object Model的实现,就是通过分离测试对象和测试脚本的抽象来实现的。
    • PO模式的优势
      • 当某个页面的元素发生变化,只需要修改该页面对象中的代码即可,测试用例不需要修改
      • 提高代码重用性,结构清晰,维护代码更容易
      • 测试用例发生变化时,不需要或者只需要修改少数页面对象即可
    • PO 模式:核心思想
      • 分层设计,分离测试用例 和 测试对象
      • 将页面的元素定位和元素行为 封装成一个 page 类
      • 实现页面对象和测试用例分离
    • 如:
      • 1、系统有30个页面,封装成 30个 页面类,有      元素定位 + 元素操作
      • 2、有500个用例 = 调用 不同的 页面类当中的 元素操作 串联起来
    • 比如:
      • 页面A =功能1,功能2,功能3.
      • 页面B =功能1,功能2,功能3
      • 用例1 =页面A的功能1 +页面A的功能2 +页面B的功能2

    *******请大家尊重原创,如要转载,请注明出处:转载自:https://www.cnblogs.com/shouhu/,谢谢!!******* 

  • 相关阅读:
    新汉诺塔
    车的放置
    [NOI 2015]荷马史诗
    [JSOI2008]星球大战
    分组
    星空
    [Luogu4175][CTSC2008]网络管理Network
    [Luogu2617]Dynamic Rankings(整体二分)
    2018冬令营赛前停课总结
    [BZOJ2752][HAOI2012]高速公路
  • 原文地址:https://www.cnblogs.com/shouhu/p/12233225.html
Copyright © 2011-2022 走看看