Testing Exceptions on the NetBeans Platform on Maven
Testing Exceptions on the NetBeans Platform on Maven
Join the DZone community and get the full member experience.
Join For FreeGet the Edge with a Professional Java IDE. 30-day free trial.
Testing for expected exceptions does not work correctly in junit <= 4.5
Junit4 provided the functionality to test for expected exceptions. Expected exceptions can be tested with the method annotation @Test:
@Test(expected=SomeException.class)
public void testSomeException() throws SomeException {
// some code that is expected to throw SomeException
}
However, in junit version < 4.5 this does not work like it should (not at all, tests will fail if expected exception gets thrown). The Maven module for the NetBeans extention for junit has a dependency on a wrapper around junit version 4.5. To be able to test for exceptions, a higher version of junit is needed. This is easily achieved by excluding the dependency on the junit 4.5 wrapper and explicitly declaring a dependency on a junit with a higher version (like 4.8.2 in our case).
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
<version>4.8.2</version>
</dependency>
<dependency>
<groupId>org.netbeans.api</groupId>
<artifactId>org-netbeans-modules-nbjunit</artifactId>
<version>${netbeans.version}</version>
<scope>test</scope>
<exclusions>
<exclusion>
<artifactId>junit-4.5</artifactId>
<groupId>org.netbeans.external</groupId>
</exclusion>
</exclusions>
</dependency>
Get the Java IDE that understands code & makes developing enjoyable. Level up your code with IntelliJ IDEA. Download the free trial.
Opinions expressed by DZone contributors are their own.
{{ parent.title || parent.header.title}}
{{ parent.tldr }}
{{ parent.linkDescription }}
{{ parent.urlSource.name }}