zoukankan      html  css  js  c++  java
  • page object 设计模式的基本原理

    以前我写了很多篇博客是关于robotframework的自动化测试。

    如果大家看了的话,就能慢慢理解UI自动化测试的分层与封装了。

    其实用python语言写自动化脚本,不使用robotframework框架的话,分层与封装的思想是一样的原理。

    只不过是我们自己通过函数和方法来进行分层和封装,没有现成的框架来供我们调用而已。

    今天我们讲的page object设计模型,其实就是一个分层与封装的模式。

    我就讲讲大概的流程吧。

    一:当我们自动化脚本写完后,就是类似于记流水账一样,一个业务流程我们写好了,但是缺点就是:代码与数据混合在一起,非常的难维护。代码重复多,臃肿。

    如果数据变动,定位元素变动,我们要在我们所写的脚本中找半天,当我们改动脚本后,更换数据后,脚本很容易出错,太脆弱了,维护起来很难,

    导致自己都不想维护了。

    二:page object 就是把数据与代码分离,我们的代码就是各种方法和函数,都是为了测试这些数据的。我们可以很容易的用不同的数据来进行测试。

    优点:

    • 减少代码的重复;
    • 提高测试用例的可读性;
    • 提高测试用例的可维护性,特别是针对 UI 频繁变化的项目;

     

    三:PO模型的大概流程与思路是怎样的呢?如何实现呢?

    我们做UI自动化的时候,一般都是分为三层来实现的。

    1,元素定位层

    2,操作层

    3,业务层

    后面就是把业务层混合数据一起,组织成测试用例。

    后面我会通过3-5篇博客,来讲解具体的实现。

    这个月我都在复习这个设计模式,以前用过这个模型做过项目,现在重新捡起来复习一个月,做几个APP的UI自动化,

    大家有兴趣的话可以跟着我的节奏,一起复习。

    当我复习完PO模型后,我就会把Jenkins复习一段时间,最后把整个流程串联起来,最终实现一键自动化的目标。

    后期,我还会去学习多机操作的方法,多部手机同时运行UI自动化脚本。

    学习完这些后,再去攻克手机性能的测试,手机抓包等知识。

    脚踏实地,一步一步的来,需要时间的。

    大家如果有兴趣的话,或者在练习的时候,有什么疑问,可以添加我的微信,大家一起交流,共同进步。

    我的微信号:huruixuandebaba       加我时,备注一下:博客园。我就会通过的。

  • 相关阅读:
    Kafka与RabbitMQ区别
    Illegal instruction 问题的解决方法
    Debian 6 , 十个串口为什么只识别到了 6个 剩下4 个被禁止了
    微信二次认证 C#
    修改XtraMessageBox的内容字体大小
    svn: E155017: Checksum mismatch while updating 校验错误的解决方法
    再生龙恢复分区后修复引导或debian linux修复引导 三部曲
    Clonezilla制作镜像时报错: errextfsclone.c:bitmap free count err
    我用windows live Writer 写个日志试试看
    Debian下签名无法验证
  • 原文地址:https://www.cnblogs.com/star12111/p/14514324.html
Copyright © 2011-2022 走看看