我有一个名为 RequestID 的标头,其值为我在下面的groovy脚本中生成的UUID:
import static java.util.UUID.randomUUID
import com.eviware.soapui.support.types.StringToStringMap
def uuid = randomUUID() as String
def headers = new StringToStringMap()
headers.put("RequestID", uuid)
testRunner.testCase.getTestStepByName("Get Username").testRequest.setRequestHeaders(headers)
我还有一个名为“Get Username”的REST请求,它通过数据源循环多次调用。我的groovy脚本似乎只为整个循环生成一个UUID,而不是为每个命中生成一个新的UUID。我错过了我的脚本中的内容还是错误的步骤顺序?我还在我的数据源步骤中使用一个名为 SSN 的网格来将数据提供给请求。
以下是我在SOAPUI中的步骤的顺序:
基本上每次发送新请求时,都应该有一个新的请求。如果这是有道理的。
答案 0 :(得分:1)
当测试到达DataSource循环时,它从DataSource获取新数据并执行目标测试步骤(在您的情况下 - 获取用户名)。所以它只执行一次Groovy脚本。
将DataSource循环中的Target测试步骤更改为Groovy Script测试步骤。