Jmeter с Maven и использование внешних скриптов Groovy проблемы с импортом Groovy - PullRequest
0 голосов
/ 22 июня 2019

Я бы хотел выполнить jmeter-тесты из maven, используя скрипты groovy, но я получил ошибку ниже. Для настройки jmeter и maven я сделал то, что описано здесь .

Должен ли я упаковать мои groovy-функции и сущности в jar-файл и скопировать в каталог lib jmeter и поместить только те groovy-скрипты рядом с файлом jmx, который содержит код сэмплера?

2019-06-22 17:40:17,714 INFO o.a.j.s.SampleResult: sampleresult.useNanoTime=true
2019-06-22 17:40:17,714 INFO o.a.j.s.SampleResult: sampleresult.nanoThreadSleep=5000
2019-06-22 17:40:17,744 ERROR o.a.j.p.j.s.JSR223Sampler: Problem in JSR223 script CreateUsers, message: javax.script.ScriptException: org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
Script4.groovy: 4: unable to resolve class com.google.gson.Gson
 @ line 4, column 1.
   import com.google.gson.Gson;
   ^

Ответы [ 2 ]

0 голосов
/ 23 июня 2019

Я нашел ответ:

  • Мне нужно упаковать в банки мои библиотеки, которые я хотел бы использовать при тестировании, и поместить их в jmeter/lib каталог
  • Мне нужновыровняйте путь сценариев сэмплера, чтобы jmeter мог с ними работать

Первым решением является следующее: jmeter-maven-plugin doc:

<project>
    [...]
        <build>
            <plugins>
                <plugin>
                    <groupId>com.lazerycode.jmeter</groupId>
                    <artifactId>jmeter-maven-plugin</artifactId>
                    <version>USE LAST VERSION</version>
                    <executions>
                        <execution>
                            <id>jmeter-tests</id>
                            <goals>
                                <goal>jmeter</goal>
                            </goals>
                        </execution>
                    </executions>
                    <configuration>
                        <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>com.sun.jdmk:jmxtools</exclusion>
                             <exclusion>com.sun.jmx:jmxri</exclusion>
            </excludedArtifacts>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    [...]
</project>

Решение для второго заключается в том, что мне нужно скопировать сценарии Sampler рядом с файлом jmx.Maven может сделать это легко, используя maven-resource-plugin .

0 голосов
/ 22 июня 2019

Вам необходимо добавить в свой pom.xml Зависимость Gson

<dependency>
<groupId>com.google</groupId>
<artifactId>gson</artifactId>
<version>2.1.0</version>
</dependency>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...