Mariusz Prowaźnik

o programowaniu w Javie, Scali i Clojure.


Uruchamianie testów JMeter'a poleceniem Maven'a

JMeter jest narzędziem umożliwiającym testowanie wydajności aplikacji. Szukałem sposobu na zautomatyzowanie jego użycia, natrafiając przy tym na informacje o różnych pluginach mavena, np jmeter-maven-plugin, chronos-maven-plugin, niestety nie udało mi się zmusić je do tego by działały tak jak bym chciał.

Efekt najbliższy oczekiwanemu uzyskałem wykorzystując exec-maven-plugin i konfigurując go tak, aby uruchomił zewnętrznego JMeter'a.

1. Instalacja JMeter'a
Ponieważ sposób ten wykorzystuje zewnętrznego JMeter'a, musimy go najpierw zainstalować. Wystarczy go ściągnąć i rozpakować.

2. Modyfikacja pom.xml
W zależności od tego gdzie został zainstalowany JMeter, ustawiamy property ze ścieżką:
<properties>
  <jmeter.home>C:\Program Files (x86)\jakarta-jmeter-2.4</jmeter.home>
</properties>

I konfigurujemy plugin: (sekcja build->plugins)
   <plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>exec-maven-plugin</artifactId>
    <version>1.1</version>
    <configuration>
     <executable>java</executable>
     <arguments>
      <argument>-jar</argument>
      <argument>${jmeter.home}\bin\ApacheJMeter.jar</argument>
      <argument>-n</argument>
      <argument>-t</argument>
      <argument>src\test\resources\JmeterTest.jmx</argument>
      <argument>-l</argument>
      <argument>results/jtl/MyJmeterTestOutput.jtl</argument>
      <argument>-Duser.classpath</argument>
      <classpath>
       <dependency>${project.build.directory}\${project.build.finalName}\WEB-INF\classes</dependency>
      </classpath>
     </arguments>
    </configuration>
   </plugin>
Zamiast src\test\resources\JmeterTest.jmx podajemy ścieżkę do testu JMeter, w pliku results/jtl/MyJmeterTestOutput.jtl zostaną zamieszczone wyniki.

3. Uruchomienie testów
Testy uruchamiamy poleceniem
mvn exec:exec

Brak komentarzy :

Prześlij komentarz