• Java+selenium 自动化测试【02】--自动化测试模型介绍


    自动化测试框架是一个集成体系,这个体系中包含测试功能的函数库、测试数据源、测试对象识别标准以及可重用的模块。

    一、线性测试

    线性测试:通过录制或编写脚本,一个脚本完成一个场景(一组完成功能操作)通过对脚本的回放来进行自动化测试。这是早期进行自动化测试的一种形式。

    优势是每一个测试脚本都是独立的,任何一个脚本文件拿出来都能单独运行;缺点是用例的开发和维护成本高,这种模式下数据和脚本是混在一起的,如果数据发生变化,脚本也需要进行变更。

    二、模块化与库

    模块化与库:在实际自动化测试过程中,比如发帖、回贴操作,都需要进行登录操作,采用线性脚本,每个脚本都需要登录代码,此时可以把重复的部分写成一个公共的模块,需要的时候进行调用,提高编写脚本的效率

    这么做有两方面的优势:

    提高开发效率,不用重复的编写相同的脚本;

    方便代码维护,假设登录模块发生了变化,只用修改公共的登录脚本就行,其它调用登录模块的脚本不需要做任何修改。

     编写testNG测试类:

     三、数据驱动


    数据驱动:是自动化的一个进步,从本意来讲,数据的改变(更新)驱动自动化的执行,从而引起结果改变。相当于把测试数据进行参数化,输入数据的不同从而引起输出结果的变化。
    举例:
    driver.get("https://www.baidu.com");
    String[] searchtxt = new String[]{"12306","火车票","selenium"};
    for(String search:searchtxt){
    driver.findElement(By.id("kw")).sendKeys(search);
    driver.findElement(By.id("su")).click();
    Thread.sleep(3000);
    driver.navigate().back();
    }
    从上面的例子可以看出,不管我们读取的是列表、字符串还是txt、csv等文件,都可以实现数据与脚本的分离,也就是参数化。

    使用表格进行参数化:
    当需要同时使用多个参数的时候,使用之前提供的方式就不太方便,比如,要参数化一个注册表单,表单需要填写的信息有用户名,密码,年龄,邮箱等,这个时候可以通过表格表单来解决该问题。
    1、创建userinfo.xls文件,如下图:

     

     2、利用java第三方工具包poi工具读取execl

    3、读取后给testng提供测试数据

    使用函数进行参数化:
    函数可以预先给参数化赋值,借助这个特性,可以通过函数调用的方式进行参数化。

    四、关键字驱动

    关键字驱动测试是数据驱动测试的一种改进类型,它将测试逻辑按照关键字进行分解,形成数据文件,关键字对应封装的业务逻辑。

    主要关键字包括三类:被操作对象(Item)、操作(Operation)和值(value),依据不同对象还有其他对应参数。关键字驱动的主要思想是:脚本与数据分离、界面元素名与测试内部对象名分离、测试描述与具体实现细节分离。

    关键字驱动测试方法把测试脚本的创建分成两个阶段:计划阶段和实现阶段。
    计划阶段:分析应用程序,并决定哪些对象和操作会被测试过程使用到,决定哪些操作需要使用个性化的关键字来提供额外的功能,从而完成清晰的业务操作,并且最大化测试的效率和可维护性。
    实现阶段:创建对象库,对象库中每一个对象都能唯一对应被测试应用程序上的界面对象。开发业务层面的关键字和功能指令库,用于驱动测试应用程序的各项功能,实现自动化测试。
    QTP 、 robotframework 、selenium IDE 等自动化工具就是典型的关键字驱动(填表格)

    下面二张图是robotframework中的截图:

  • 相关阅读:
    ubuntu 下 apt-get update 错误
    'unable to run mksdcard sdk tool" when instll android studio on ubuntu14.10以后版本
    ubuntu下安装sougou
    ubuntu下安装jdk1.8.0_91
    ubuntu update时出现错误
    android studio中R文件变红并报错
    git使用
    Android新手须知
    css初级之框模型
    css初级之边框
  • 原文地址:https://www.cnblogs.com/xmxit-liu/p/12605858.html
Copyright © 2020-2023  润新知