zoukankan      html  css  js  c++  java
  • Python+Selenium+Unittest实现PO模式web自动化框架(1)

    1.什么是PO模式?

    PO是Page Object的缩写

    PO模式是自动化测试项目开发实践的最佳设计模式之一,讲页面定位和业务操作分开,也就是把对象的定位和测试脚本分开,从而提供可维护性。

    主要有以下几种分层方式:
    1)两层: 对象逻辑层+业务数据层
    2)三层:对象库层+逻辑层+业务数据层
    3)四层:对象库层+逻辑层+业务层+数据层

    2.PO模式的优势

    1)效率高 :PO模式的逻辑层方法有具体定义,元素发生变化修改逻辑层,业务层不变。这样看来结构简单清晰,舒服更符合人类习惯, 普通方式就是继续堆case。
    2) 复用多收益大: 同样这里如果逻辑复用越多,PO模式收益越大,因为对于PO模式来说都只需要修改一个地方多处受益。

    3.po模式的具体框架

    1.Af_Web:项目名称

    2.Common:主要放封装好的定位元素方法、项目的路径配置、测试报告的方法库、自定义的logging模块等

    3.Outputs:主要放log日志、测试报告、测试截图等

    4.PageLocators:主要放web页面的定位元素

    5.PageObjects:主要放各页面的业务功能

    6.TestCases:主要放测试用例根据Python+unittest或者Python+pytest进行测试用例的封装

    7.TestDatas:主要放测试数据

    8.main.py:最后在项目下有一个main.py文件,就是项目的入口。

    注:PO模式有很多的分层,你也可以根据你自己的要求进行设计,po模式只是一种思想,没有固定的模式的。

     源码地址:

    链接:https://pan.baidu.com/s/1tbq87ZmjaLcfHwUfnrCNWQ
    提取码:wwe7
    复制这段内容后打开百度网盘手机App,操作更方便哦

  • 相关阅读:
    【jQuery基础学习】03 jQuery中的事件与动画
    【jQuery基础学习】02 jQuery的DOM操作
    【jQuery基础学习】01 jQuery选择器
    【jQuery基础学习】00 序
    【JS复习笔记】07 复习感想
    【JS复习笔记】06 方法
    洛谷P1067 多项式输出 NOIP 2009 普及组 第一题
    嵊州D6T2 城市 city
    博弈论小结
    嵊州D2T4 十七个中毒的英国人 poisoning
  • 原文地址:https://www.cnblogs.com/renshengruxi/p/12931384.html
Copyright © 2011-2022 走看看