Mam słoik w moim repozytorium maven, który zawiera testy junit, które powinny być uruchamiane w różnych projektach, ponieważ jest w stanie sprawdzić projekt i przetestować pewne jego cechy. Unforunately surefire nie pobiera testów zawartych w słoiku, tak jak ten Feature Request shows.Uruchamiaj testy JUnit zawarte w słoju zależności za pomocą Maven Surefire
W żądaniu operacji proponują rozpakowanie słoika, który następnie zostanie wykonany przez surefire.
Pomyślnie rozpakowałem słoik przy użyciu wtyczki zależnej od maven-dependency, ale zawarte testy nie są wykonywane. To jak ja skonfigurowany maven zależność plugin rozpakować mój słoik:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>unpack</id>
<phase>process-test-classes</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>de.mwx.test</groupId>
<artifactId>selenium-test-base</artifactId>
<version>0.1</version>
<overWrite>true</overWrite>
<outputDirectory>
${project.build.directory}/classes
</outputDirectory>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
Każda pomoc będzie appriciated.
Dlaczego testy w innym słoika? Czy są to testy dla twojego projektu, czy innego? Jeśli inny, dlaczego je prowadzisz? Jeśli dla Twojej aplikacji, dlaczego nie są one w twoim projekcie? –
Drugi słoik jest w rzeczywistości szkieletem testowym, który działa na bieżącym projekcie i wykonuje różne zadania. Wydawało mi się, że jest to najbardziej modularny sposób: ale sądzę, że nie było to zamierzone użycie dla pewności. – devsnd
Jednak projekty już definiują standard dla testów projektu. I IMO nie ma sensu uzależniać projektu od jego testów - jeśli cokolwiek, testy byłyby zależne od testowanego modułu, ponieważ testy wykorzystują moduł, ale nie odwrotnie. –