设置LoadUI中未反映的测试用例属性的SoapUI Groovy脚本

设置LoadUI中未反映的测试用例属性的SoapUI Groovy脚本,groovy,soapui,loadui,Groovy,Soapui,Loadui,我正在使用LoadUI 2.6.8和SoapUI 5.0 我已经能够将属性传输到测试用例属性中,这些属性在LoadUI中的SoapUI运行程序之间成功传递,如下所述: 我遇到的问题是,我通过Groovy脚本设置的一个属性如下: def tc = testRunner.testCase.testSuite.getTestCaseByName("Auth and Start Up") tc.setPropertyValue("Cookie","$jsesid") 未在LoadUI中更新(当groo

我正在使用LoadUI 2.6.8和SoapUI 5.0

我已经能够将属性传输到测试用例属性中,这些属性在LoadUI中的SoapUI运行程序之间成功传递,如下所述:

我遇到的问题是,我通过Groovy脚本设置的一个属性如下:

def tc = testRunner.testCase.testSuite.getTestCaseByName("Auth and Start Up")
tc.setPropertyValue("Cookie","$jsesid")
未在LoadUI中更新(当groovy脚本运行时),因此未正确传递

我必须使用groovy脚本,因为cookie是响应头的一部分,而正常的属性传输步骤不允许我进行传输

以前有人遇到过这种情况吗?有没有洞察到为什么会发生这种情况? 谢谢


更新:我通过更新身份验证API响应,将cookie作为响应主体的一部分(而不仅仅是标题)来解决这个问题,因此我能够使用似乎有效的属性转移步骤。不过,这仍然是一个解决办法。

感谢链接SiKing,我想我在尝试找出cookies时确实遇到了这个问题,我最终通过使用脚本手动设置标题成功地解决了这个问题。为了测试它是否是cookie问题,我使用了另一个属性。我在groovy脚本中添加了以下行:

tc.setPropertyValue("testprop","blah")
在SoapUI中运行,属性值设置为ok。然后,我手动将SoapUI测试用例中的测试用例属性“testprop”的值更改为“a”,并保存了项目


在LoadUI中,我运行了SoapUI运行程序,该属性的输出显示为“a”,尽管groovy脚本运行良好。我玩得越多,就越觉得LoadUI中存在某种缺陷:(

如果使用“维护HTTP会话”选项,它将自动为您传递Cookies。感谢您的提示,我尝试了它,但没有做任何更改。该测试在SoapUI中运行良好,但在LoadUI中运行后就没有了。它似乎从SoapUI中获取测试用例中设置的属性值,即使groovy脚本在LoadUI中成功运行该值未更新…就好像脚本的该部分从未运行或被忽略一样。我知道脚本的其余部分运行良好,因为我在同一脚本中为同一测试用例中的其余调用设置了cookie标头,并且它们都成功运行。假设您尝试传递实际会话cookie,则无法使用ng setPropertyValue。看这个:看下面我的答案(太长了,无法发表评论)现在的问题是,如果这是一个bug,那么如果我只知道groovy脚本中应该设置属性的值,如何避免它?(即不能使用属性转移步骤)