Ich verwende Selenium-Tests auf dem Selenium Grid mit dem Surefire-Plugin, um Tests durchzuführen. In Bezug auf meine Testaufschlüsselung habe ich mehrere Klassen, von denen einige einen Test darin und einige mehr als einen Test haben.JUnit und Surefire Paralleltests - ForkCount & ThreadCount
Also auf meiner Grid habe ich 30 Chrome-Web-Treiber und ich möchte alle Tests in allen Klassen parallel ausführen.
Ich habe gelesen, wie dies die parallel
Parameter verwenden zu tun, die ich als gesetzt haben:
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.17</version>
<configuration>
<includes>
<include>${testSuite}</include>
</includes>
<parallel>all</parallel>
<useSystemClassLoader>false</useSystemClassLoader>
<perCoreThreadCount>false</perCoreThreadCount>
<threadCount>20</threadCount>
<browser>${browser_type}</browser>
</configuration>
</plugin>
Doch dies scheint nicht alle Chrome-Web-Treiber zu füllen ich zur Verfügung haben.
Wenn ich dann forkCount
verwenden, wie:
<forkCount>20</forkCount>
<reuseForks>true</reuseForks>
Dann, wenn die Testausführung zum ersten Mal startet, werden alle Web-Fahrer es zu einer Zeit ein Verhalten schnell beginnt jedoch gefüllt fallen und.
Also meine Fragen:
- Gibt es eine Beziehung zwischen forkCount und tpi
- Gibt es etwas zusätzliche ich wirklich tun müssen, parallel diese zum Laufen zu bringen?
Danke.
Verwenden Sie @NotThreadSafe auf deinen Tests? Alles, was Sie brauchen, ist hier https://maven.apache.org/surefire/maven-surefire-plugin/examples/fork-options-and-parallel-execution.html –
Nein - nicht mit dem @ NotThreadSafe – userMod2
Selen-Skripte sind dafür ausgelegt parallel laufen? Andernfalls werden alle Thread-Aktionen in einem einzelnen Chrome-Browser ausgeführt. – parishodak