我是groovy腳本編寫新手,正在分析URL並打印它的參數。如何解析URL以在groovy中獲取其參數?
此網址是:https://www.google.com/?aaa=111&bbb=222&ccc=33&dd=1484088989_b23f248ac6e5d9a9b47475526bb92ee1
如何從網址提取DD參數?
我感謝您的幫助!
我是groovy腳本編寫新手,正在分析URL並打印它的參數。如何解析URL以在groovy中獲取其參數?
此網址是:https://www.google.com/?aaa=111&bbb=222&ccc=33&dd=1484088989_b23f248ac6e5d9a9b47475526bb92ee1
如何從網址提取DD參數?
我感謝您的幫助!
您需要添加一個groovy腳本。
def groovyUtils = new com.eviware.soapui.support.GroovyUtils(context);
def testCase = context.testCase;
def testStep = testCase.getTestStepByName("NAME_TESTStepRequest");
def endpoint =testStep.getPropertyValue('Endpoint');
log.info endpoint;
def url = new URL(endpoint)
//def url = new URL("https://www.google.com/?aaa=111&bbb=222&ccc=33&dd=1484088989_b23f248ac6e5d9a9b47475526bb92ee1")
// get all query params as list
def queryParams = url.query?.split('&') // safe operator for urls without query params
// transform the params list to a Map spliting
// each query param
def mapParams = queryParams.collectEntries { param -> param.split('=').collect { URLDecoder.decode(it) }}
// assert the expected values
log.info mapParams['aaa']
//assert mapParams['aaa'] == '111'
log.info mapParams['bbb']
//assert mapParams['bbb']== 'abc'
log.info mapParams['dd']
//assert mapParams['dd']=='023423'
請您檢查這個帖子。 Get query params from request url soapui using groovy
會不會是重複的問題呢? – Rao
我認爲這是相同的問題,但我的英語是非常糟糕的確認你的問題。 –
你有沒有試過?你如何獲得網址?它是否修復?或動態?你把它當作字符串嗎?可能在您的案例中添加更多細節將有所幫助。您也可以查看https://docs.oracle.com/javase/tutorial/networking/urls/urlInfo.html – Rao
[使用groovy從請求url soapui中獲取查詢參數]的可能重複(http://stackoverflow.com/問題/ 39535861/get-query-params-from-request-url-soapui-using-groovy) – Rao