SoapUI利用Groovy把外部数据加载到request中

来源:互联网 发布:浙大中控的java 编辑:程序博客网 时间:2024/05/21 23:34

原文地址:  http://www.cnblogs.com/zhangfei/p/3792826.html


默认已经用Groovy把外部数据给读取出来了,关键是读取出来后,如何加载到request中去?这里提供了两种方法:
1.该Groovy脚本的名称是"setUp"

1
2
3
4
5
6
7
8
def num = Integer.parseInt(testRunner.testCase.getPropertyValue( "count" ))
log.info num
num = (++num) % 2
testRunner.testCase.setPropertyValue( "count", num + "")
String[] acList = ["Loginn"+String.valueOf(Math.random()).substring( 05 ),"Loginn"+String.valueOf(Math.random()).substring( 06 )]
log.info num
log.info acList[num]
acList[num]

 上面的例子是把数据放到了一个数组中去了,在request中这样写,然后再加一个dataloop,就可以循环的来把值赋给request中,然后运行request.

复制代码
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sam="http://www.soapui.org/sample/">   <soapenv:Header/>   <soapenv:Body>      <sam:login>         <username>${setUp#result}</username>               </sam:login>   </soapenv:Body></soapenv:Envelope>
复制代码

2.该Groovy脚本的名称是"demo"

1
2
testRunner.testCase.testSuite.getTestCaseByName("TestCaseDemo").setPropertyValue("username","Loginn"+String.valueOf(Math.random()).substring( 05 ))
testRunner.testCase.testSuite.getTestCaseByName("TestCaseDemo").setPropertyValue("password","Loginn123")

 上面的例子中,TestCaseDemo是指testcase的名称,在request中这样写:

复制代码
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sam="http://www.soapui.org/sample/">   <soapenv:Header/>   <soapenv:Body>      <sam:login>         <username>${#TestCase#username}</username>         <password>${#TestCase#password}</password>      </sam:login>   </soapenv:Body></soapenv:Envelope>
复制代码

 

 

0 0
原创粉丝点击