Inspectopedia Help

TestCase with non-trivial constructors

Reports test cases with initialization logic in their constructors. If a constructor fails, the @After annotated or tearDown() method won't be called. This can leave the test environment partially initialized, which can adversely affect other tests. Instead, initialization of test cases should be done in a setUp() or @Before annotated method.

Bad example:

public class ImportantTest { private File file; public ImportantTest() throws IOException { file = File.createTempFile("xyz", ".tmp"); } // ... tests go here }

Inspection Details

Available in:

IntelliJ IDEA 2023.3, Qodana for JVM 2023.3

Plugin:

Java, 233.SNAPSHOT

Last modified: 13 July 2023