Плагин Jmeter Maven: чтобы указать количество потоков, цикл, время нарастания в Maven - PullRequest
0 голосов
/ 28 июня 2018

В файле POM.xml я установил следующие переменные и запустил скрипт jmeter из maven, используя следующую команду. Но это не работает. Значит поток не запущен с 10 пользователями. Можете ли вы помочь мне с этим. Также погода в JMeter, мне нужно установить что-нибудь Maven Command: mvn -DJmeterTestFile = ER_SampleTest -DRampUp = 2 -DLoopcount = 1 -DThreadcount = 10 проверки

Мой файл 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>com.example</groupId>
  <artifactId>jmeter-demo</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>jmeter-demo</name>
  <url>http://maven.apache.org</url>

 <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>org.eclipse.jetty.websocket</groupId>
      <artifactId>websocket-client</artifactId>
      <version>9.1.1.v20140108</version>
      <classifier>hybrid</classifier>
    </dependency>
    <dependency>
      <groupId>org.apache.jmeter</groupId>
      <artifactId>ApacheJMeter</artifactId>
      <version>2.10</version>
    </dependency>
    <dependency>
      <groupId>org.apache.jmeter</groupId>
      <artifactId>ApacheJMeter_core</artifactId>
      <version>2.10</version>
    </dependency>
    <dependency>
      <groupId>org.apache.jmeter</groupId>
      <artifactId>ApacheJMeter_http</artifactId>
      <version>2.10</version>
    </dependency>

  </dependencies>


  <build>
     <plugins>
        <plugin>
            <groupId>com.lazerycode.jmeter</groupId>
            <artifactId>jmeter-maven-plugin</artifactId>
            <version>2.7.0</version>
            <executions>
                <execution>
                    <id>jmeter-tests</id>
                    <goals>
                        <goal>jmeter</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

<plugin>
            <artifactId>maven-jar-plugin</artifactId>
            <version>2.3.1</version>
            <executions>
              <execution>
                <id>default-jar</id>
                <phase>package</phase>
                <goals>
                  <goal>jar</goal>
                </goals>
                <configuration>
                 <!-- This configuraition is to specify jmeter script, number  -->
                      <testFilesIncluded>
                             <jMeterTestFile>${JmeterTestFile}.jmx</jMeterTestFile>
                     </testFilesIncluded>
                     <testResultsTimestamp>false</testResultsTimestamp>
                     <propertiesUser>
                        <Threadcount>${Threadcount}</Threadcount>
                        <Loopcount>${Loopcount}</Loopcount>
                        <Rampup>${RampUp}</Rampup>
                     </propertiesUser>

                          <testPlanLibraries>
                             <artifact>org.apache.activemq:activemq-spring:5.15.2</artifact>
                 <artifact>org.apache.activemq:activemq-client:5.15.2</artifact>
                 <artifact>org.apache.activemq:activemq-broker:5.15.2</artifact>
                </testPlanLibraries>
                       <excludedArtifacts>
                             <exclusion>commons-pool2:commons-pool2</exclusion>
                             <exclusion>commons-math3:commons-math3</exclusion>
                             <exclusion>org.slf4j:slf4j-nop</exclusion>
                             <exclusion>logkit:logkit</exclusion>
                             <exclusion>avalon-logkit:avalon-logkit</exclusion>
                             <exclusion>jdom:jdom</exclusion>
                             <exclusion>log4j:log4j</exclusion>
                             <exclusion>commons-logging:commons-logging</exclusion>
                             <exclusion>excalibur-logger:excalibur-logger</exclusion>
                        </excludedArtifacts>
             <jmeterExtensions>
                            <artifact>kg.apc:jmeter-plugins-casutg:2.4</artifact>
                        </jmeterExtensions>

                        <downloadExtensionDependencies>false</downloadExtensionDependencies>

                  <excludes>
                    <exclude>**/JMeter/plugins/functional/controler/**/*</exclude>
                    <exclude>**/JMeter/plugins/controler/websocketapp/**</exclude>
                  </excludes>
                        <junitLibraries>
                            <artifact>com.lazerycode.junit:junit-test:1.0.0</artifact>
                        </junitLibraries>
                </configuration>
              </execution>
            </executions>
          </plugin>



    </plugins>
</build>
 <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

</project>

Ответы [ 2 ]

0 голосов
/ 28 июня 2018
  1. Вам необходимо определить свои свойства, например JmeterTestFile, Threadcount и т. Д. В разделе <properties>, например:

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <JmeterTestFile>test</JmeterTestFile>
        <Threadcount>10</Threadcount>
        <Loopcount>5</Loopcount>
        <RampUp>1</RampUp>
    </properties>
    
  2. Вам нужно переместить <configuration> секцию с maven-jar-plugin на jmeter-maven-plugin
  3. В вашем плане тестирования укажите свойства, используя функцию __ P () наподобие ${__P(Threadcount,)}.
  4. Обновите ваши зависимости "jmeter *" до JMeter 4.0 , поскольку JMeter Maven Plugin 2.7.0 интегрирован с JMeter 4.0

Пример pom.xml файла (вам, возможно, все равно придется изменить его, так как я понятия не имею, что еще он должен делать, кроме выполнения тестов JMeter)

<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>com.example</groupId>
    <artifactId>jmeter-demo</artifactId>
    <packaging>jar</packaging>
    <version>1.0-SNAPSHOT</version>
    <name>jmeter-demo</name>
    <url>http://maven.apache.org</url>


    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>3.8.1</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.eclipse.jetty.websocket</groupId>
            <artifactId>websocket-client</artifactId>
            <version>9.1.1.v20140108</version>
            <classifier>hybrid</classifier>
        </dependency>
        <dependency>
            <groupId>org.apache.jmeter</groupId>
            <artifactId>ApacheJMeter</artifactId>
            <version>4.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.jmeter</groupId>
            <artifactId>ApacheJMeter_core</artifactId>
            <version>4.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.jmeter</groupId>
            <artifactId>ApacheJMeter_http</artifactId>
            <version>4.0</version>
        </dependency>

    </dependencies>


    <build>
        <plugins>
            <plugin>
                <groupId>com.lazerycode.jmeter</groupId>
                <artifactId>jmeter-maven-plugin</artifactId>
                <version>2.7.0</version>
                <executions>
                    <execution>
                        <id>jmeter-tests</id>
                        <goals>
                            <goal>jmeter</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <!-- This configuraition is to specify jmeter script, number  -->
                    <testFilesIncluded>
                        <jMeterTestFile>${JmeterTestFile}.jmx</jMeterTestFile>
                    </testFilesIncluded>
                    <testResultsTimestamp>false</testResultsTimestamp>
                    <propertiesUser>
                        <Threadcount>${Threadcount}</Threadcount>
                        <Loopcount>${Loopcount}</Loopcount>
                        <Rampup>${RampUp}</Rampup>
                    </propertiesUser>

                    <testPlanLibraries>
                        <artifact>org.apache.activemq:activemq-spring:5.15.2</artifact>
                        <artifact>org.apache.activemq:activemq-client:5.15.2</artifact>
                        <artifact>org.apache.activemq:activemq-broker:5.15.2</artifact>
                    </testPlanLibraries>
                    <excludedArtifacts>
                        <exclusion>commons-pool2:commons-pool2</exclusion>
                        <exclusion>commons-math3:commons-math3</exclusion>
                        <exclusion>org.slf4j:slf4j-nop</exclusion>
                        <exclusion>logkit:logkit</exclusion>
                        <exclusion>avalon-logkit:avalon-logkit</exclusion>
                        <exclusion>jdom:jdom</exclusion>
                        <exclusion>log4j:log4j</exclusion>
                        <exclusion>commons-logging:commons-logging</exclusion>
                        <exclusion>excalibur-logger:excalibur-logger</exclusion>
                    </excludedArtifacts>
                    <jmeterExtensions>
                        <artifact>kg.apc:jmeter-plugins-casutg:2.4</artifact>
                    </jmeterExtensions>

                    <downloadExtensionDependencies>false</downloadExtensionDependencies>
                    <junitLibraries>
                        <artifact>com.lazerycode.junit:junit-test:1.0.0</artifact>
                    </junitLibraries>
                </configuration>
            </plugin>

            <plugin>
                <artifactId>maven-jar-plugin</artifactId>
                <version>2.3.1</version>
                <executions>
                    <execution>
                        <id>default-jar</id>
                        <phase>package</phase>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>


        </plugins>
    </build>
        <properties>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
            <JmeterTestFile>test</JmeterTestFile>
            <Threadcount>10</Threadcount>
            <Loopcount>5</Loopcount>
            <RampUp>1</RampUp>
        </properties>

</project>
0 голосов
/ 28 июня 2018

Вы отправляете свойства JMeter -DRampUp=2 -DLoopcount=1 -DThreadcount=10 в ваш файл jmx,

Таким образом, вы должны использовать их в своей группе тем:

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