Как поместить и выполнить код в Keyword с JSR223? - PullRequest
1 голос
/ 29 октября 2019

Я пытаюсь реализовать это: https://www.testautomationguru.com/jmeter-how-to-create-a-data-keyword-driven-framework-for-performance-testing/

У меня есть файл .csv с именем тестового набора в первом столбце. Поэтому я хочу запустить специальный тестовый пример в соответствии со значением в .csv.

Test Plan
|--- Test Fragment
    |--- Switch Controller
         |--- Transaction Controller (TestCase1)
              |--- JSR223 Sample (TestCase1 script)   
         |--- Transaction Controller (TestCase2)
              |--- JSR223 Sample (TestCase2 script)   
         |--- Transaction Controller (TestCase3)
              |--- JSR223 Sample (TestCase3 script)
|--- Thread Group
     |--- CSV Data Set Config
     |--- Debug Sampler
     |--- ForEach Controller
          |--- Module Controller
     |--- View Result Tree

Однако, если я добавлю некоторый код в JSR223 в Transaction Controller, например log.info("TEST !"), ничего не отобразитсяв консоль.

Есть ли решение для выполнения кода, записанного в JSR223 и отображения его в консоли?

Более того, в View Result Tree я нашел эту информацию: testcasename=TestCase1,Так что, похоже, работает, но без журнала ...

Большое спасибо.

Ответы [ 2 ]

0 голосов
/ 29 октября 2019

Если вы используете сокращение log, вы сможете увидеть ваше сообщение TEST ! только в jmeter.log файл

enter image description here

Если вы хотите увидеть сообщение в STDOUT , вы должны использовать println вместо этого как:

println("TEST !")

Если вы хотите продолжить использовать log сокращение и для просмотра сообщений как в jmeter.log файле, так и в STDOUT - вам нужно изменить конфигурацию ведения журнала JMeter , например:

  • в *Файл 1028 * log4j2.xml (находится в папке "bin" вашей установки JMeter)
  • Под тегом <Appenders> добавьте следующий блок:

    <Console name="STDOUT" target="SYSTEM_OUT">
        <PatternLayout>
            <pattern>%d %p %c{1.}: %m%n</pattern>
        </PatternLayout>
    </Console>
    
  • Под тегом <Root> добавьте следующую строку:

    <AppenderRef ref="STDOUT"/>
    

enter image description here

После перезапуска JMeter выдолжен начать видеть ту же информацию, что и в файле jmeter.log в STDOUT, включая ваши пользовательские сообщения

enter image description here

0 голосов
/ 29 октября 2019

Простое использование OUT вместо log:

OUT.println("Hello Console");

OUT - System.out - например, OUT.println ("message")

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...