我不得不将一些JMeter性能测试转换为soapui(使用groovy脚本),我有一个关于在XML字符串中保留回车的快速问题,如果可以的话。
很少有人问这个,但我不是编码员 - 因此我的困惑。在我的JMeter脚本中,它说明了
String FinalXML=
"<someXMLheader>\n"+
"<someXMLcontent>\n"+
"</someXMLcontent>\n"+
"</someXMLheader>";
vars.put("FinalXML1", FinalXML)
我已经完成了一些关于做等效的阅读,我相信它正在为一个变量分配一个字符串(就像我说 - 我不是编码器!),所以我怀疑我的groovy脚本会出现如下所示:
def FinalXML1 = "<someXMLheader>
<someXMLcontent>
</someXMLcontent>
</someXMLheader>"
正如你所看到的,我已经删除了每一行的引号以及回车符'\ n“+'(与JMeter beanshell脚本相比),但我想知道这是否正确,而且,
如上所述,我不是一个编码器,这就是为什么我要问这样一个简单的问题。
非常感谢任何回应的人......
答案 0 :(得分:0)
首先回答你的Groovy问题:要在Groovy中创建一个包含特殊字符的字符串,例如换行符,你需要将其括在tripple-quotes中,如下所示:
def FinalXML1 = """<someXMLheader>
<someXMLcontent>
</someXMLcontent>
</someXMLheader>"""
非常基本的Google搜索会将that向上翻转!
您的XML问题的第二个:这取决于!大多数XML解析器将剥离空白,有些则不会。对于文字字符串,它又是不同的。请注意,在上面的示例中,节点<someXMLcontent>
不仅具有换行符,而且换行符后面还跟有21个空格字符。在您的系统上试一试,看看会发生什么。
另请注意,这些都不是特定于SoapUI的。