我知道通常情况下HTML shouldn't be parsed with regex。
但我想对Web应用程序进行性能测试。我确切知道HTML的外观。所以我可以使用正则表达式从页面源中提取一些数据。
当我进行性能测试(使用Jmeter)时,我想从主机上获取更少的资源。
什么选项会减少资源:XPath,正则表达式(Jakarta ORO)或Jsoup?
答案 0 :(得分:2)
从JMeter 2.8开始,答案是Regexp。 但它当然取决于您使用的Regexp表达式。 JMeter中的Regexp实现相当优化,是相关的主要后处理方式。
关于JSoup,它需要基于JSR223后处理器的自定义编码。
JMeter 2.9将引入一个基于Extractor的新的CSS / JQuery选择器,它有两个可能的底层实现:
见:
它的性能将低于Regexp,因为它构建了一个DOM文档,但它在测试计划中简化了许多不需要超优化测试计划的语法。
最后,关于XPath,因为它构建了一个DOM树:
它的内存和CPU成本高于正则表达式,特别是如果你想提取许多元素,已经创建了一个增强功能: