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