SoapUI接口测试--使用EXCEL参数化

转自:http://www.cnblogs.com/ppxyz/p/6894707.html


SoapUI接口测试--使用EXCEL参数化


在测试用例中添加步骤DataSource,如下图

SoapUI接口测试--使用EXCEL参数化

配置DataSource数据来源,如下图选择数据来源为“Excel”并填写EXCEL数据的相关信息

SoapUI接口测试--使用EXCEL参数化

可选择绝对路径,excel保存到project同级目录下

选择项目-->Project Properties-->Resource Root:选择${ProjectDir}-->用${ProjectDir}替换掉固定的项目存放目录就可以了,这样会比较灵活

SoapUI接口测试--使用EXCEL参数化

在DataSource中添加参数,相对应EXCEL有几个就添加几个参数,一一对应,如下图所示

SoapUI接口测试--使用EXCEL参数化

 

运行DataSource取得Excel中的参数值,如下图所示,取两9行数据

SoapUI接口测试--使用EXCEL参数化

导入的数据中,设置取第N行到第N行的数据,索引从0开始的

SoapUI接口测试--使用EXCEL参数化

配置好DataSource好,就可以在接口中进行参数化了,如下图所示,测试用例中打开“下发无承运商的订单”选择要参数化的地方 > 右键选择“Get Data..” > 选择刚才配置的DataSource > 再选择对应的参数。

SoapUI接口测试--使用EXCEL参数化

配置好后变成如下所示,也可手写

SoapUI接口测试--使用EXCEL参数化

使用DataSource Loop循环取值

SoapUI接口测试--使用EXCEL参数化

配置DataSource Loop

SoapUI接口测试--使用EXCEL参数化

配置好DataSource Loop后还需要调整一下步骤顺序,正确的步骤应当是“数据源---请求----数据源循环”

然后运行TestCase

 SoapUI接口测试--使用EXCEL参数化

可以设置TestCase的属性,使得在当前循环不通过时,跳到下一个循环(循环执行的时候这个比较重要)。如下图,打开TestCase option窗口,去掉“Abort test if an error occurs”的构选

SoapUI接口测试--使用EXCEL参数化

 PS:soapui 4.5.1版本不能识别excel2007版本,可识别2003版本,否则会报unable to recogize OLE stream

 

 




















需解决的问题:

1.新增多个DataSource,让不同的测试用例调用,其中一个选择后,不会填充到输入框中,而且手写也没用

解决:莫名其妙的再设置一次又好了,神奇~

2.多个测试用例,用同一份DataSource中的不同列的数据,excel中若每列的行数不一样,例如:

SoapUI接口测试--使用EXCEL参数化

运行时,调用的第二列字段,会循环取TEST1705230001~TEST1705230005+4行空格。如何能跳过空格?