WEB接口测试之Jmeter接口测试自动化 (二)(数据分离)

时间:2022-04-09 18:35:32

转载:    http://www.cnblogs.com/chengtch/p/6105231.html

通过逐个录入的方式,好不容易将需要测试几十个接口的300多个测试用例录入sampler-http请求中,固定的测试环境跑起来也还

感觉良好。不料在新服务器环境中跑用例时,问题来了:修改参数维护脚本等成本太大!

脚本参数是写死的,修改起来得一个个请求打开来依次输入参数值,有点坑。。。

WEB接口测试之Jmeter接口测试自动化 (二)(数据分离)

为了解决这个问题,毅然决定将所有参数提取处理,用excel文件来做数据驱动,做法如下:

1、问题分析

要通过excel表格做数据驱动,首先得让jmeter能读到表格中指定的行和列。考虑到个人代码能力捉急,选择用csv data set config

元件。之前用它是感觉总是从表格第一行开始读的,所以尝试修改源码使之能读取指定的excel表格行。

2、修改Jmeter源码

先看一下csv data set config元件界面

WEB接口测试之Jmeter接口测试自动化 (二)(数据分离)

从上面元件界面来看,并没有设置读取行的功能,为了能使csv data set config能自动读取表格指定行,参照下面链接的方法

http://zfy421.iteye.com/blog/2322251,为csv data set config添加了读取行的功能,如下图:

WEB接口测试之Jmeter接口测试自动化 (二)(数据分离)

有了它就可以关心如何在excel或csv文件来设置测试用例了

3、设计用例

WEB接口测试之Jmeter接口测试自动化 (二)(数据分离)

用例excel格式如上图所示,有用例编号、期望值、参数等等列,可以用jmeter读取任一行任一列的表格数据,

貌似没什么毛病了。

4、再看一下修改后的测试脚本

费力调整了一番,但脚本量并没有减少……

WEB接口测试之Jmeter接口测试自动化 (二)(数据分离)

5、总结

我希望能通过读取excel来分离测试脚本和测试数据,这个做到了,但不幸的是我将读取csv文件的行号写死了,造成了后面在旧用

例中新加用例造成行号改变带来的不便。参数一个个列在表格中的尝试也是不怎么可取的,界面变得参差不齐,初衷是为了让别人一眼

看懂,却也并没有带来维护工作量的降低。

当然我后来发现了 if,看到了新的一丝曙光,又决定重新来过。