как сохранить агрегатный график jmeter как png в папке в целевой папке maven - PullRequest
0 голосов
/ 13 июня 2018

Я использую плагин jmeter-maven-для запуска своих нагрузочных тестов.Тем не менее, я хочу иметь возможность сохранить график агрегирования в виде PNG.

Я видел, что есть инструмент командной строки JmeterPlugindCMD, который мог бы сделать это.

Но есть ли плагин maven, который мог бы помочь с этим, так как я пытаюсь автоматизировать это.

Есть ли способ получить статистическую таблицу из сводного отчета?Это тоже поможет.Мне не нужен весь CSV.

Любые предложения по этому поводу были бы полезны.

1 Ответ

0 голосов
/ 13 июня 2018

К сожалению, вы не сможете сгенерировать агрегированный график, используя JMeterPluginsCMD Инструмент командной строки , поддерживаемые типы диаграмм:

  • ThreadsStateOverTime = Активные потоки с течением времени
  • BytesThroughputOverTime
  • HitsPerSecond
  • LatenciesOverTime
  • ResponseCodesPerSecond
  • ResponseTimesDistribution
  • ResponseTimesOverTime * 101 * * 10 * 10 10P 10 * 10 10P 10 * 10 10 * 10 10P 10 * 10 10 * 10 10P 10 * 10 10 * 10 10P 10 10П10 10 10P 10 10П10 10 10P 10 10P 10 10P 10 10P 10 10P 10 10П10 10П10 10П10 10П10 10 10П10 10П10 10П 10 10П 10 10П10ThroughputVsThreads
  • TimesVsThreads = Время ответа против потоков
  • TransactionsPerSecond

Например, если вы хотите сгенерировать диаграмму Время ответа с течением времени из Плагин JMeter Maven Вы можете сделать это, например, post-integration-test phase , добавив Exec Maven Plugin , настроенный как:

<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.6.0</version>
<executions>
    <execution>
        <id>generate-aggregate-report</id>
        <phase>post-integration-test</phase>
        <goals>
            <goal>exec</goal>
        </goals>
        <configuration>
            <basedir>${basedir}/target/jmeter/lib</basedir>
            <executable>java</executable>
            <commandlineArgs>-jar cmdrunner-2.2.1.jar --tool Reporter --generate-png ${basedir}/target/aggregate.png --input-jtl ${basedir}/target/jmeter/results/${timestamp}-test.csv --plugin-type ResponseTimesOverTime</commandlineArgs>
        </configuration>
    </execution>
</executions>
</plugin>

Full * 1041Файл * pom.xml будет выглядеть примерно так:

<?xml version="1.0" encoding="UTF-8"?>
<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/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>jmeter-maven</groupId>
    <artifactId>com.example.jmeter-maven</artifactId>
    <version>1.0-SNAPSHOT</version>
    <properties>
        <timestamp>${maven.build.timestamp}</timestamp>
        <maven.build.timestamp.format>yyyyMMdd</maven.build.timestamp.format>
    </properties>
    <build>
        <plugins>
            <plugin>
                <groupId>com.lazerycode.jmeter</groupId>
                <artifactId>jmeter-maven-plugin</artifactId>
                <version>2.7.0</version>
                <configuration>
                    <jmeterExtensions>
                        <artifact>kg.apc:jmeter-plugins-cmd:2.1</artifact>
                        <artifact>kg.apc:cmdrunner:2.2.1</artifact>
                        <artifact>kg.apc:jmeter-plugins-cmn-jmeter:0.5</artifact>
                        <artifact>kg.apc:jmeter-plugins-synthesis:2.1</artifact>
                        <artifact>kg.apc:jmeter-plugins-graphs-basic:2.0</artifact>
                    </jmeterExtensions>
                    <downloadExtensionDependencies>false</downloadExtensionDependencies>
                </configuration>
                <executions>
                    <execution>
                        <id>jmeter-tests</id>
                        <goals>
                            <goal>jmeter</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>jmeter-check-results</id>
                        <goals>
                            <goal>results</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>exec-maven-plugin</artifactId>
                <version>1.6.0</version>
                <executions>
                    <execution>
                        <id>copy-cmdrunner-to-lib-folder</id>
                        <phase>post-integration-test</phase>
                        <goals>
                            <goal>exec</goal>
                        </goals>
                        <configuration>
                            <basedir>${basedir}/target/jmeter/lib/ext</basedir>
                            <executable>cp</executable>
                            <commandlineArgs>cmdrunner-2.2.1.jar ..</commandlineArgs>
                        </configuration>
                    </execution>
                    <execution>
                        <id>generate-aggregate-report</id>
                        <phase>post-integration-test</phase>
                        <goals>
                            <goal>exec</goal>
                        </goals>
                        <configuration>
                            <basedir>${basedir}/target/jmeter/lib</basedir>
                            <executable>java</executable>
                            <commandlineArgs>-jar cmdrunner-2.2.1.jar --tool Reporter --generate-png ${basedir}/target/aggregate.png --input-jtl ${basedir}/target/jmeter/results/${timestamp}-test.csv --plugin-type ResponseTimesOverTime</commandlineArgs>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</project>

См. Пять способов запуска теста JMeter без использования статьи JMeter GUI для lбольше узнать о различных способах запуска теста JMeter, включая (но не ограничиваясь этим) плагин JMeter Maven.

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