zoukankan      html  css  js  c++  java
  • 接口测试的数据准备

    数据准备是接口测试过程中不可或缺的一步,也是花费时间很长的工作,因为程序的功能就是处理数据。那么在接口测试中,我们要怎样来准备数据呢?经过这几天对接口测试的初探,整理了以下一些关于数据准备的方法。

    数据准备分为两种类型:

    1、数据库中的基础数据;

    2、基于web层的接口测试时,所依赖的session、param等数据;

    一、数据库中的基础数据

    和ruby脚本中的数据准备类似,接口测试中也使用Excel文件来准备数据库的数据,但是Excel的写法有所不同。

    在建好测试类后(下图中的PurchaseProcessServiceTest.java),在同一目录下新建一个同名的Excel文件,如图:

    打开新建的Excel,将下方的sheet名改成你要插入数据的数据库表名,如下图中的table_user表:

    在Excel中填写要插入的数据,如下图:

    第一行是表中的字段,第二行开始就是要插入的数据。

    这里有个小技巧,可以先从PL/SQL中查询到相关的数据,然后把它导出成一个CSV文件,用Excel打开这个CSV文件,就可以直接把数据复制粘贴到Excel中了:

    Excel写好后,要把它加到测试类中,这里使用标签来实现,在用例测试代码上面加如下标签:

    @DataSet({“PurchaseProcessServiceTest.xls”})
    @Test
    public void test_N_测试用例_case01() {……..}

    这样每次测试执行时,会先根据Excel中的数据,查找数据库,如果Excel中的数据在数据库中已存在,系统就会自动先将它们从数据库中删除,然后把Excel中的数据全部插入数据库。

    不过这样准备的数据是静态的,如果你想要准备动态的数据,如:你需要插入的数据中有个时间字段,这个字段的值是当前的系统时间。这样你就需要先用Excel插入一条数据,然后在测试代码中,用jdbc来update这条数据,把数据中的时间改成你想要的时间,就可以了。

    二、基于web层的接口测试

    因为是针对web层的测试,所以需要在测试执行前,对接口所依赖的session、param等进行注入。

    在itest中,我们用xml文件来实现这一步。

    和上面一样,要在测试类的同一目录下,新建一个同名的xml文件,结构如下:

    <tests url=”" module=”这里写要测试的接口名,类名” action=”要测试的方法名,类中的方法”>
         <test name=”用例名,要和测试类中的用例名一致”>
              <session name=”session参数名” desc=”描述” value=”参数值”/>

              <param name=”param参数名” desc=”描述” value=”参数值”/>
         </test>
    </tests>

    这样每次执行测试时,就会自动注入这些requst参数了。

    三、其他

    当然上面的两种数据准备方法都是需要配置的,至于怎么配置,敬请期待接口测试初探之配置篇

    参考资料:http://itest.taobao.net:8088/site/tutorial.html


    转载务必注明出处Taobao QA Team,原文地址:http://qa.taobao.com/?p=6879

  • 相关阅读:
    thymeleaf是用于编写html模版的编程语言(工具语言)
    前端页面生成技术
    算法是用逻辑语言描述的问题求解步骤
    模板引擎
    递归与分形
    泛型的特征-为什么使用泛型(集合理论)
    算法沉思录-算法的描述(草稿)
    计算机语言发展史
    pHP生成唯一单号
    laravel实现批量添加数据
  • 原文地址:https://www.cnblogs.com/bukudekong/p/2131855.html
Copyright © 2011-2022 走看看