zoukankan      html  css  js  c++  java
  • 自动化测试用例设计三原则

    今天总结一下在做自动化测试中测试用例设计的一些建议,总结为三原则:

    1. 保持Case之间的独立性

    case独立性就是能够独立运行,当我们有随机的跑其中某个Case或乱序的跑这些Cases时,测试的结果都应该是准确的。

    比如在执行过程中用例的运行环境取决于其他测试用例的执行状态,那么,其中的测试用例不能复用时,与之相关的测试用例的可复用性也不复存在。

    有时候我们碰到在本地没问题,但是在server上跑有问题,大概率就是这个原因导致的。

    2. 提高Case执行效率

    测试人员能在最短的时间内执行测试覆盖,不仅能提高团队的工作效率,也可增强团队的信心

    a.如果有对执行条件的检查,若检查失败,则尽快退出执行;
    b.将数据准备或环境清除等工作抽取成关键字放到更高的层级中,可以合理利用TestNG的注解来实现;
    c. 用例中尽量少的出现sleep,建议用"wait until ..."来代替;
    d. 可以采用并发执行用例的方法来提升效,这需要原则1case的独立性来做保证。

    3. 减少case的依赖性

    依赖包括执行环境,测试对象,外部设备

    执行环境:

    你在本地上使用Webdriver框架编写、调试用例后,上传到代码块,然后其他同事拉取你的用例在他的本地运行,随后又被部署到持续集成服务器上。所以你编写的用例时就要尽量避免使用不同平台的库或者shell命令。这个我们一般可以用Maven来进行依赖管理。

    测试对象:

    使用Page Object模式,主要是将每一个页面抽象成一个页面对象类,把该页面中的元素定位,元素操作,业务流程等都封装在该类的方法中,编写用例时,直接已面向对象的思想调用该页面类中的方法。同时,当页面元素属性变化时,只需要更改页面对象类即可。

    外部设备:

    有时候被测系统可能需要和硬件交互,外部设备可能会升级或更换,那我们可以将外部设备的操作从测试用例中抽离出去,封装成测试库,秩序维护这个测试库就可以了。比如打印功能。

  • 相关阅读:
    基于springboot框架的博客系统
    告别并不遥远的儿时,抬眼期待未来
    Python微信公众号教程基础篇——收发文本消息
    华为云落地敏捷+DevOps,助力大企业高效能
    【nodejs原理&源码赏析(5)】net模块与通讯的实现
    华为云&华中大联合实验室,夺得2019ICDAR发票识别竞赛世界第一
    00034_类与对象
    php批量下载文件
    php批量下载图片
    asp.net批量下载文件
  • 原文地址:https://www.cnblogs.com/clarke157/p/8794842.html
Copyright © 2011-2022 走看看