我一直在尝试使用以下正则表达式提取器
Reference Name: FMSFlightPlan
Regular Expression: (?s)<FMSFlightPlan>(.*?)</FMSFlightPlan>
Template: $1$
Match No. 1
为了匹配XML中两个FMSFlightPlan标记之间的字符串(标记之间的行数不同,因此(?s)
建立dotall模式)
<FMSFlightPlan>
6500
AN NTEST/GL
- FPN/FN/RP:DA:LEMG:AA:LEXJ:F:BLN,N38092W003375.UN865.
BUGIX,N42215W003381.R753.EMANU,N42575W003469
</FMSFlightPlan>
几个测试应用程序告诉我,我的regex是正确的。然而,当我试图使用Beanshell断言打印出捕获的字符串时,我会得到错误消息:
断言错误:错误断言失败消息: org.apache.jorphan.util.JMeterException: Error调用bsh方法: eval源文件:内联计算:导入java.io.*;//将数据结果写入文件outfile = "/Users/Dani“。。。'‘令牌解析错误:第12行的词法错误,第380列。遇到:"\n“(10),在”\“3811\tYes\tAAR\tSTN\t 835\t$B 738\tfp,nradps,art,CCAAN,EXCD,wp00,P00\t37919\TA0\ti\t10\t0\t3\ti \t14\t 25/M\t0000ADF\t140785\t133806\t006979\t01:15:00\t0484\t360\t0379\t360\t0112\t 000932\ti 00 \t007115\t2013-02-13T21:23:00Z\t2013-02-14T08:35:00+00:00\t000837\t00:10:00\t000000\t00:00:00\t000837\t00:10:00\t000000\t000000\t000000\t00:00:00\t000000\t00:00:00\t“
因此,提取器似乎返回一个字符串,但Beanshell断言没有将其识别为变量。为什么在建立多高层模式后会出现这种情况呢?有转义错误吗?我也不明白错误信息是什么意思
Encountered: "\n"
因为文本中没有字符被解析。
我考虑过使用XPath提取器而不是正则表达式提取器,但是听说在涉及很多操作或线程时,这并不是最优的。
发布于 2013-02-19 22:36:25
(?s) -意思是单行,对吗?然后它击中一个\n,这是一个新的线路信号。这可能是导致错误的原因。它并不期待一个新的行字符。
您能使用常规响应断言吗?我认为您可以使用模式中的正则表达式来测试。
https://stackoverflow.com/questions/14913444
复制相似问题