-
Notifications
You must be signed in to change notification settings - Fork 165
Description
Problem Statement
See prior report at https://groups.google.com/g/testng-users/c/KpPqUAzEVSw
A test project illustrating the problem is at https://github.com/RichMacDonald/testng_parallel_bug_issue_20240503
Using testing 7.10.2. Eclipse plugin version is 7.10.0.202404131040
I have a test class that includes a subclass of itself as a static inner class. So two classes in the same file, one class inheriting from the other.
I run all my tests with 'parallel=classes'. This is specified by an org.testng.ITestNGListener implementation that manually sets the property on the ISuite.
In Eclipse, when I select the class itself and launch testng, there is a single thread that calls @BeforeClass on BOTH classes before calling @BeforeMethod. In other words, the mode is running as 'parallel=methods'. I have verified that the ITestNGListener has been called first. This is the issue.
If I select the package itself and launch testng, the outcome is the same error.
If I select the project's textng.xml file, then it works correctly. With a single thread, all the methods in the first class are executed before the second class is begun.
If I move the static inner class to its own separate file, then everyone works correctly in all modes. Specifically, running testng on all classes in a package now works correctly. whereas it didn't before.
Any relate message in "Error Log" view
"Windows -> Show View -> Others -> Error Log"
None
The Dependency Management tool for your project
- Maven
- Gradle
- Ant
- Eclipse Buildpath (aka. Use "TestNG Library" for your project in Eclipse)
Operating System
- Windows
- Linux
- OSX