51Testing软件测试论坛

标题: 求组,soapUI的,rest请求中,如何把URL的参数值进行参数化,或者groovy的值传进去 [打印本页]

作者: xingtt    时间: 2015-7-22 11:29
标题: 求组,soapUI的,rest请求中,如何把URL的参数值进行参数化,或者groovy的值传进去
本人刚开始学习soapUI,这边有个需求
http://demon/config?app_id=&version=&ts=&sign=
一共四个参数
其中:ts是时间戳,需要取当前时间的时间戳
sign是需要前面3个参数+一个key 加密后获取

主要是这2个参数如何做自动化?
作者: ntgecm    时间: 2015-7-22 15:01
1、先加密sign,然后生成多个ts,最后利用datasource进行参数化。需系统学习soapui可以Q:1364920046
作者: ntgecm    时间: 2015-7-22 15:01
1、先加密sign,然后生成多个ts,最后利用datasource进行参数化。需系统学习soapui可以Q:1364920046
作者: jingzizx    时间: 2015-7-22 16:04
ts是时间戳,需要取当前时间的时间戳,好像只能通过编程获取当前时间,通过groovy编写脚本,然后调用脚本的返回值;
sign是需要前面3个参数+一个key 加密后获取,所以也需要编程获取,在获取当前时间戳的同时,要计算出sign值,然后进行参数传递;
仅是思路,楼主试试


作者: xingtt    时间: 2015-7-23 09:19
[attach]96243[/attach]@jingzizx 主要卡在这里,网上的例子都是xml里的引用,我不清楚request里面怎么引用groovy里的

作者: chenyansong    时间: 2015-7-25 11:50
xingtt 说的是正解
作者: chenyansong    时间: 2015-7-25 11:50
xingtt 说的是正解
作者: abus    时间: 2015-8-13 07:36
可以试一下Parasof公司t的 soaTest 工具, 这有一篇文章好像说的就是你的问题 http://www.sunnyu.com/?p=365 可以自己修改一下页面上提供的脚本直接用了。

作者: app320    时间: 2016-9-20 17:33
在Test Steps里面add一个groovy script步骤:命名为timestemp

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

最后在对应的请求条用的值里面写入:${timestemp#result}
这个可以实现,已经验证
我现在也是sign签名比较麻烦




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2