xingtt 发表于 2015-7-22 11:29:40

求组,soapUI的,rest请求中,如何把URL的参数值进行参数化,或者groovy的值传进去

本人刚开始学习soapUI,这边有个需求
http://demon/config?app_id=&version=&ts=&sign=
一共四个参数
其中:ts是时间戳,需要取当前时间的时间戳
sign是需要前面3个参数+一个key 加密后获取

主要是这2个参数如何做自动化?

ntgecm 发表于 2015-7-22 15:01:22

1、先加密sign,然后生成多个ts,最后利用datasource进行参数化。需系统学习soapui可以Q:1364920046

ntgecm 发表于 2015-7-22 15:01:25

1、先加密sign,然后生成多个ts,最后利用datasource进行参数化。需系统学习soapui可以Q:1364920046

jingzizx 发表于 2015-7-22 16:04:11

ts是时间戳,需要取当前时间的时间戳,好像只能通过编程获取当前时间,通过groovy编写脚本,然后调用脚本的返回值;
sign是需要前面3个参数+一个key 加密后获取,所以也需要编程获取,在获取当前时间戳的同时,要计算出sign值,然后进行参数传递;
仅是思路,楼主试试

xingtt 发表于 2015-7-23 09:19:14

@jingzizx 主要卡在这里,网上的例子都是xml里的引用,我不清楚request里面怎么引用groovy里的

chenyansong 发表于 2015-7-25 11:50:06

xingtt 说的是正解

chenyansong 发表于 2015-7-25 11:50:40

xingtt 说的是正解

abus 发表于 2015-8-13 07:36:00

可以试一下Parasof公司t的 soaTest 工具, 这有一篇文章好像说的就是你的问题 http://www.sunnyu.com/?p=365 可以自己修改一下页面上提供的脚本直接用了。

app320 发表于 2016-9-20 17:33:23

在Test Steps里面add一个groovy script步骤:命名为timestemp

ldef cal = Calendar.instance
ldef timestamp = cal.getTime().getTime() /1000as int //因为实现的时候要转成ms,所以除以1000
//return md5.getMD5(1)
log.infotimestamp

最后在对应的请求条用的值里面写入:${timestemp#result}
这个可以实现,已经验证
我现在也是sign签名比较麻烦
页: [1]
查看完整版本: 求组,soapUI的,rest请求中,如何把URL的参数值进行参数化,或者groovy的值传进去