如何进行数据驱动测试?katalon怎么实现?

2021-07-08 14:09:44 浏览数 (3245)

小编在之前分享了一篇关于 katalon 这个工具的文章,为了避免篇幅过长,同时为了将其与seleniumIDE最大的突出点更好的展现出来,小编决定另起一篇文章进行介绍。接下来这篇文章,小编就来介绍一下 katalon 数据驱动要怎么做吧!

什么是数据驱动测试

相信聪明的小伙伴看到这个词大概也能猜出来什么是数据驱动测试了吧?简单的来说,数据驱动测试是一种测试用例简化的方法。比如说,原来登陆测试,工程师需要测试多个账号,每个账号算一个测试用例,这样就会产生很多测试用例,而数据驱动测试的思想,就是将相同的逻辑步骤提取出来,使用变量替代用例中不同的参数(这样的操作是不是有点像函数?)。然后将之前的不同的参数收集起来作为一个数据池,当需要执行对应的测试用例的时候,只需要把对应的参数传进去就可以了。

以一个简单的登陆为例,登陆流程为,打开网页->输入账号->输入密码->点击登陆->登陆成功。假设我们需要测试十个账号,那么就会出现十个测试用例,如果采用数据驱动测试的话,那就是一个测试用例+10组数据,在用例管理上就大大提高了效率。

katalon recorder 怎么做数据驱动测试

katalon界面

可以看到katalon最下方有一排的控制台,其中我们只需要关注variable 和data driven这两个窗口即可,数据驱动的相关功能都在这里进行控制。

第一步,录制一个案例

我们简单的录制一个案例,具体流程如下:打开百度->输入数据(这里我们输入的数据为W3Cschool,另外在程序中这里被拆分成两步,一步先点击输入框,第二步才是输入数据)->点击登陆。脚本录制截图如下:

脚本录制

上面就是录制的脚本,其实我们可以发现,红框内部的指令,每个测试案例都会不一样的(也就是我们要提取出来的数据)而红框里面的绿框,是我们需要插入的数据值。

第二步,使用变量替代

我们可以看到上图的绿框是固定值,但我们的目的是让他变成参数,所以第二步是使用变量替代原有的value值。

设定变量

如上图所示,我们将w3cschool 的值设为​${keyword}​。

第三步,使用循环脚本包围重复执行项。

在上述的脚本中插入循环脚本。在命令行前添加loadVars命令,在命令行后添加endLoadVars。

插入循环

第四步,添加数据池

在循环脚本的开始命令中的target添加数据池。

添加数据驱动

 关于数据池,更多内容在下一点介绍。

添加完数据驱动就可以执行了。

如何做数据池

在上面流程的第四步中,需要导入一个数据池,这个数据池怎么做呢?首先,katalon 支持两种方式的导入,一种是JSON的导入,一种是csv的导入,两种数据池的制作首先要确定一件事:调用方希望获取什么样的数据。

以上述例子为例,我们命名了一个变量叫keyword(在脚本中使用​${keyword}​取出),所以我们的数据池的一个关键属性是keyword。

在JSON中,数据采用键值对的方式存储,所以每一条数据都要带上keyword这个属性名,所以对应的JSON应该是这样的:

[
  {
    "keyword": "编程狮" 
  },
  {
   "keyword": "小行动"
  },
   {
   "keyword": "六项精进"
  }
]

在csv中(csv可以使用excel打开),只需要将第一行命名为keyword就可以了。

csv文件

 注意,请注意数据池的编码字符集,不然可能会出现乱码。

添加数据池

做完数据池后需要将其添加到data driven中。

添加数据池

在data driven面板上的右边,可以添加CSV格式和JSON格式的数据池,点击即可选择做好的数据池添加。

添加完的数据池就可以在上述的第四步中使用了。

其他

在做完上述步骤后,可以看到当前代码用到的变量值和其属性,方便开发者进行代码调试。

变量窗口

小结

通过上面的学习,我们可以学会katalon的数据驱动测试。在成规模成体系的软件测试过程中,数据驱动测试是相当重要的,小伙伴们要是想了解相关的内容知识,可以持续关注W3C技术头条的后续内容。小编会持续进行介绍。