我使用SOAP UI临测试自动化和我新为。我正在使用Rest API自动化工具。 我发送了一个POST服务请求并获得了一些响应,例如:唯一标识,名字,姓氏。如何使用groovy比较SOAP UI中两个不同请求的响应值?
现在我送的输入参数的名字,姓氏另一个GET请求,我以前的POST请求的响应(用财产转移步骤),并响应我得到了另一种独特的ID(GET的响应)。
我的要求是这两个唯一的ID这两个不同的反应使用Groovy比较和Mark测试合格或不合格基础上的结果。请帮忙。
我使用SOAP UI临测试自动化和我新为。我正在使用Rest API自动化工具。 我发送了一个POST服务请求并获得了一些响应,例如:唯一标识,名字,姓氏。如何使用groovy比较SOAP UI中两个不同请求的响应值?
现在我送的输入参数的名字,姓氏另一个GET请求,我以前的POST请求的响应(用财产转移步骤),并响应我得到了另一种独特的ID(GET的响应)。
我的要求是这两个唯一的ID这两个不同的反应使用Groovy比较和Mark测试合格或不合格基础上的结果。请帮忙。
您可以访问你想要比较和执行的属性和assert
检查您所需的条件常规脚本。
你在你的问题,你用属性传送步骤但是你没有告诉你在哪里保存你的结果,由于我想例如,你存储值的TestCase评论性质:
// you've to use the name of the property you set in the property transfer step
def fn = testRunner.testCase.getPropertyValue('firstName_firstResponse')
def fn2 = testRunner.testCase.getPropertyValue('firstName_secondResponse')
assert fn == fn2, "THE FIRST NAME AREN'T EQUALS"
在Groovy脚本一步步测试方面你已经一个testRunner
对象,你可以用它来访问testCase
,testSuite
...然后获得所需的性能。
另一种可能的方法是做同样的,而是直接从您的一步步测试的response
获得的性能和执行的XPath,这样做可以使用遵循Groovy脚本:
def fn = context.expand('${TestStepName_1#response#*://firstName}')
def fn2 = context.expand('${TestStepName_2#response#*://firstName}')
assert fn == fn2, "THE FIRST NAME AREN'T EQUALS"
像testRunner
的context
对象是已经在常规步步测试的情况下。 context.expand
中使用的符号是${Test Step Name#response#XPath}
。
希望它有帮助,
谢谢albciff,令人敬畏的兄弟! 你救了我。是的,我在测试案例属性文件中保存了以前的值。再次 感谢。我不知道为什么我的问题给出'-1'。 –
@Python_Novice很高兴帮助你。我不做倒票,但可能是由于缺少的细节(我只是猜测),尝试用它更新你的答案,也许那么downvoter又来了撤销行动......如果不是至少在futur也许其他用户发现你的问题有帮助,并upvote它':)' – albciff
您是否使用soap/rest(xml或json)api? – Rao
我使用的休息(JSON)API –
为什么你需要使用Groovy?这种断言在SoapUI中本地处理。 – SiKing