如何在SoapUI/ReadyAPI的斷言部分修剪(前導和尾隨空格)變量?如何修剪(空間)在SoapUI的斷言部分的變量?
Ex:
Input String : "Failure "
Output String : "Failure"
如何在SoapUI/ReadyAPI的斷言部分修剪(前導和尾隨空格)變量?如何修剪(空間)在SoapUI的斷言部分的變量?
Ex:
Input String : "Failure "
Output String : "Failure"
經過一些谷歌後,我得到了XSLT/XPath方法,它在斷言窗口中對給定變量進行空間裁剪。
方法名稱:正常化空間()
用途將是這樣的: 正常化空間(//結果[1] /結果集[1] /列[1] /PAYMNT_RQST.PAYMNT_STAT_CD [1])
規格化空間函數摺疊字符串中的空格。具體地,它執行三個步驟:
感謝
這不是一個Groovy方法,這是一個XPath方法。 – SiKing
你說得對。我更新了它。謝謝 –
使用修剪的尾隨空格。 使用替換來擺脫空格。
def trimExample = "Some string to be trimmed. ";
def trimmed = trimExample.trim();
def removeSpacesExample = "Some String To Lose All Spaces."
def removedSpaces = removeSpacesExample.replace(' ', '');
使用log.info(varName)查看效果。
這些方法在ReadyAPI中的斷言彈出窗口中不起作用。 –
它在腳本斷言和Groovy腳本中爲我工作。我將在週一重新檢查工作, –
您正在使用「Xpath的比賽」截至目前
你可以嘗試使用「XQuery的比賽」來代替。它會自動修剪空間,我們以後「-1 5」有空間
樣品響應(所以我們會盡量把空格去掉
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<ConversionRateResponse xmlns="http://www.webserviceX.NET/">
<ConversionRateResult>-1 5 </ConversionRateResult>
</ConversionRateResponse>
</soap:Body>
</soap:Envelope>
把下面的代碼中的XQuery比賽
declare namespace soap='http://schemas.xmlsoap.org/soap/envelope/';
declare namespace ns1='http://www.webserviceX.NET/';
for $x in //ns1:ConversionRateResponse
return <Result>{data($x/ns1:ConversionRateResult)}</Result>
以下是結果,你可以看到空格後面的5被刪除
<Result>-1 5</Result>
因此對於您的示例代碼就會像下面一個XQuery的比賽
for $x in //ns:Results[1]/ns:Resultset[1]/ns:Row[1]
return <Result>{data($x/ns:LM_ELEC_PAYMNT_PAYMNT.PLCY_STAT_CD[1])}</Result>
的最好的事情是使用腳本斷言這種或任何其他複雜的操作中。但上面應該是有幫助的
感謝您的回覆。我有一個簡單的方法,正如我在下面提到的。所以不能試試這個。我相信這也有助於解決這個問題。 –
你的意思修剪或分配給VAR值刪除空格? –
我的意思是從分配給變量的值中刪除空格。 –
你介意提供樣本數據(文本形式,而不是圖片),並提及您使用的是什麼樣的斷言?這個問題呢?從摘要/描述或從您的意見下面的答覆中都不清楚。 – Rao