接上一篇继续介绍接口测试脚本设计。

  1. 改:接口的功能是在服务器数据库里修改一些数据,为了确保数据库中存在待修改数据、脚本可重复执行,建议在脚本中包含以下操作
    a. 查询数据库中是否已存在待修改的数据,如果没有的话,需要新增待修改的数据;
    b. 调用待测接口进行修改操作;
    c. 断言检查数据库中是否成功修改了测试数据;
    d. 第三步成功的话需要在数据库中把数据修改恢复成原数据以便后续重复执行该脚本;
  2. 查:接口的功能是在服务器数据库里查询出一些数据,这在四种类型中是最简单的一种,正常不需要修改数据库,建议脚本包含以下操作
    a. 为了确保数据库中有待查数据,先查询是否存在待查数据;
    b. 如果不存在的话,需要先新增;
    c. 调用待测接口进行查询操作;
    d. 断言判断查询出的结果与上面步骤中从数据库查出的结果完全一致;

四种接口脚本设计基本介绍完了,可以看到,为了脚本执行结果准确且能够重复执行,需要执行的操作还是很多的,特别是和数据库的交互。目前我们使用接口测试工具主要是 RF 和 Jmeter,这两种工具都支持和数据库的交互,其中 RF 是通过引入 database 库来解决,

database 库支持与数据库的多种交互



Jmeter 由于我们本身不够熟悉,目前是在线程组中设置与数据库的连接,



然后在每个 sampler 里面添加前置处理器->JDBC PreProcessor,在里面写对于的 sql 脚本。一个 JDBC PreProcessor 只能写一个 sql,所以有多个操作的时候就需要建多个 JDBC PreProcessor,还涉及使用正则表达式提取结果,这样操作感觉挺复杂的,不知道大家有没有什么简单的方法。

如果本身某一数据库交互操作经常使用,可以放在 RF 测试套的 setup 作为脚本运行的前置,需要根据实际情况而定。


↙↙↙阅读原文可查看相关链接,并与作者交流