Gatling - 验证SOAP ResponseBoxy中的值

时间:2014-06-13 19:10:45

标签: scala soap wsdl load-testing gatling

我希望检查一个从SOAP Web服务返回ResponseBody的值。

以下是Web Service的ResponseBody示例:

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
     <ns5:getUserResponse xmlns:ns5="http://<someservice>" xmlns:ns3="java:com.mywebservice">
     <ns3:resultCode>0</ns3:resultCode>
   </S:Body>
</S:Envelope>

我有以下内容:

....//snipped for brevity
.check(regex("""<ns3:resultCode>(\d*)</ns3:resultCode""").saveAs("resCode"))
.check("""${resCode}""".in(0 to 200))
....//snipped for brevity

我收到一条错误消息,指出.in不适用于String类型,但我不确定如何验证xml的响应是否包含特定值。

任何帮助都会很棒,而且我需要的任何其他东西都应该非常乐意。提前谢谢。

编辑: 我忘了提到我正在使用加特林版2.0.0-M3a - 提前谢谢。

1 个答案:

答案 0 :(得分:0)

使用current 2.0.0-SNAPSHOT,即:

.check(regex("""<ns3:resultCode>(\d*)</ns3:resultCode""")
       .transform(_.toInt)
       .in(0 to 200))

使用2M3a,即:

.check(regex("""<ns3:resultCode>(\d*)</ns3:resultCode""")
       .transform(_.map(_.toInt))
       .in(0 to 200))