Проблемы с модульным тестом Intellij / Maven - PullRequest
4 голосов
/ 11 ноября 2010

Поэтому у меня проблемы с запуском всех тестов в моем проекте Maven с Intellij. Причина этого заключается в том, что несколько модулей зависят от собственных методов в загруженной DLL. Поскольку эту dll нельзя загрузить более одного раза, мне пришлось добавить в файл maven pom предложение, что эти тесты будут выполняться в раздвоенном режиме.

Однако в Intellij я не могу понять, как заставить те же самые тесты работать в раздвоенном режиме. Я хотел бы использовать симпатичный пользовательский интерфейс Intellij для модульных тестов с зеленой полосой и симпатичные интерфейсы UT, однако из-за этой проблемы я не могу запустить все тесты в своем проекте.

Кто-нибудь сталкивался с проблемами с Maven, Intellij и модульными тестами и любыми советами о том, как заставить их хорошо играть вместе?

Вот фрагмент моего файла pom.xml:

<plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
                <skip>true</skip>
            </configuration>
            <executions>
                <execution>
                    <id>allTests</id>
                    <goals>
                        <goal>test</goal>
                    </goals>
                    <configuration>
                        <skip>false</skip>
                        <excludes>
                            <exclude>**/pkgA/**/*Test.java</exclude>
                        </excludes>
                    </configuration>
                </execution>
                <execution>
                    <id>forkedTests</id>
                    <goals>
                        <goal>test</goal>
                    </goals>
                    <configuration>
                        <skip>false</skip>
                        <forkMode>pertest</forkMode>
                        <includes>
                            <include>**/pkgA/**/*Test.java</include>
                        </includes>
                        <excludes>
                            <exclude>**/SpecificTest.java</exclude>
                            <exclude>**/*PerformanceTest.java</exclude>
                        </excludes>
                    </configuration>
                </execution>
            </executions>
        </plugin>

Ответы [ 3 ]

2 голосов
/ 11 ноября 2010

Проголосуйте за запрос функции: Разрешите модульные тесты запускать отдельные JVM в средстве отслеживания проблем IntelliJ IDEA.

0 голосов
/ 21 ноября 2014

В IntelliJ 14 у вас есть опция Режим вилки в диалоговом окне Запустить конфигурацию . Когда вы запускаете все тесты в классе / наборе, вы можете включить метод forkMode =, который должен быть эквивалентен pertest .

вашего maven.
0 голосов
/ 11 ноября 2010

Однако в Intellij я не могу понять, как заставить те же самые тесты работать в раздвоенном режиме.

Я не думаю, что IntelliJ позволяет настроить поведение своего тестера .

Кто-нибудь когда-нибудь сталкивался с проблемами с Maven, Intellij и юнит-тестами и любыми советами о том, как сделать так, чтобы они хорошо играли вместе?*

  • используйте Maven для запуска всех тестов, даже под IntelliJ ~ или ~
  • используйте TestSuite, который выполняет инициализацию DLL и ссылается на все TestCases, которые, конечно, больше не загружают DLL.
...