如何从JMeter日志声明stdout语句?

问题描述 投票:0回答:1

我们有一个执行JAR的beanshell测试,该测试反过来在stdout上打印响应;与this文章中描述的过程非常相似。但是,我想知道是否有一种方法可以验证日志中打印的语句作为测试的一部分,而无需借助手动验证。

jmeter beanshell
1个回答
0
投票
  1. 忘记Beanshell,since JMeter 3.1 you should be using JSR223 Test Elements and Groovy language
  2. 您的测试设计看起来很模糊,但是,如果您没有想到比捕获标准输出更好的选择,则可以创建自己的PrintStream并使用System.setOut()函数使用自己的PrintStream代替STDOUT。类似于:

    • setUp Thread Group添加到您的测试计划中
    • JSR223 Sampler添加到设置线程组
    • 将以下代码放入“脚本|区域:

      def baos = new ByteArrayOutputStream()
      def ps = new PrintStream(baos)
      System.setOut(ps)
      props.put('baos', baos)
      
    • 完成后,您可以使用以下代码访问所有已打印到STDOUT的消息:

      def stdout = props.get('baos').toString()
      

演示:

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.