Перейти к содержимому

Фотография

Запуск тестов через консоль


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 4

#1 _eugene_

_eugene_

    Новый участник

  • Members
  • Pip
  • 26 сообщений
  • Город:Томск


Отправлено 12 мая 2017 - 14:23

Добрый день. 

Test Plan
   -> HTTP Request Defaults

   -> Thread Group 1
       -> HTTP
       -> HTTP
       -> HTTP

   -> Thread Group 2
       -> HTTP
       -> HTTP
       -> HTTP

   -> Thread Group 3
       -> HTTP
       -> HTTP
       -> HTTP

   -> Thread Group 4
       -> HTTP
       -> HTTP

В данный момент запуск теста производится через консоль.

apache_jmeter/bin/jmeter -n -t test.jmx -J protocol=https -J server=LIVE -J duration=130

При выполнении данный команды запускается JMeter и выполняются все Thread Group, которые есть в Test Plan.

 

Возможно ли,  как нибудь через консоль указывать конкретно какой Thread Group запускать?

К примеру, запустить для выполнения только Thread Group 4, или Thread Group 3 и Thread Group 2


  • 0

#2 APC

APC

    Опытный участник

  • Members
  • PipPipPipPip
  • 293 сообщений
  • ФИО:Похилько Андрей Федорович
  • Город:Москва


Отправлено 12 мая 2017 - 18:22

Я бы рекомендовал для этого обертку над JMeter по имени Taurus, она как раз создавалась с возможностью включать/выключать элементы тестплана.

Фича называется "modifications", там по имени тред-группы её можно включать/выключать.

http://gettaurus.org...xisting-Scripts


  • 0

#3 _eugene_

_eugene_

    Новый участник

  • Members
  • Pip
  • 26 сообщений
  • Город:Томск


Отправлено 22 мая 2017 - 05:05

Спасибо.


  • 0

#4 pixtart

pixtart

    Новый участник

  • Members
  • Pip
  • 11 сообщений
  • ФИО:Михаил

Отправлено 08 июня 2017 - 09:56

Можно сделать это и без оберток.

1. Передать имя треда в консоли, как, например, threadToStart.
2. В Jmeter вычитать эти киворды в переменную (вычитать функцией __P).
3. В тредгруппе в поле Number Of Threads выполнить биншел скрипт: 
возвращать 0, если ключевого слова (имени текущего треда) нет в перечне тех, которые надо запустить. 
возвращать заданное через командную строку или фиксированное количество тредов, если ключевое слово есть.

  • 0

#5 DanteSenpai

DanteSenpai

    Новый участник

  • Members
  • Pip
  • 6 сообщений
  • ФИО:Станислав

Отправлено 22 июня 2017 - 05:22

Я для запуска Jmeter-а использую Maven. Довольно удобно запускать как один тест, так и целый набор тестов. Ограничить или выбрать что запускать можно в pom.xml с помощью создания профиля и условий активации.:

 

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
 <modelVersion>4.0.0</modelVersion>
 <groupId>test</groupId>
 <artifactId>mvn-jmeter</artifactId>
 <packaging>jar</packaging>
 <version>1.0-SNAPSHOT</version>
 <name>maven-jmeter-autotest</name>
 <url>http://maven.apache.org</url>

 <properties>
    <!--my properties-->
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
</properties>

<!-- profiles with activatin param -->
<profiles>
        <profile>
            <id>jmeter</id>
            <activation>
                <property>
                    <name>testnum</name>
                    <value>[1,10]</value>
                </property>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>com.lazerycode.jmeter</groupId>
                        <artifactId>jmeter-maven-plugin</artifactId>
                        <version>2.2.0</version>
                        <executions>
                            <execution>
                                <id>jmeter-tests</id>
                                <phase>verify</phase>
                                <goals>
                                    <goal>jmeter</goal>
                                </goals>
                            </execution>
                        </executions>
                        <configuration>
                            <jmeterVersion>3.1</jmeterVersion>
                            <jmeterExtensions>
                                <artifact>org.apache.activemq:activemq-all:jar:5.14.1</artifact>
                            </jmeterExtensions>
                            <resultsFileNameDateFormat>yyyyMMddHHmm</resultsFileNameDateFormat>
                            <ignoreResultFailures>true</ignoreResultFailures>
                            <testFilesIncluded>
                                <jMeterTestFile>*${testnum}.jmx</jMeterTestFile>
                            </testFilesIncluded>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>
    
</project>

*.jmx файл предлагаю разбить на нужное количество по тридам, сохранить в формате *[1-10].jmx, и запускать командой на сборку:

  • mvn verify -Pjmeter -Dtestnum=1

После завершения сборки, все сеансы Jmeter будут закрыты. В папке target\jmeter\results будут все логи запуска, в target\jmeter\logs - логи сборки maven-ом.

 

Инфа по плагину для мавена: https://github.com/j...ven-plugin/wiki


  • 0


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных