I wanna do something like
java -enableassertions com.geeksanonymous.TestClass
How do I do this?
The easiest way in latest version of Netbeans 8.0 will be... Go to RUN->Set Project Configuration->go for "customize"
then a window pops-up again click on "Customize" in front of VM Options n select "ea" in the options.
I dont know about Netbeans, but you also can programmatically enable assertions (maybe that helps you as well).
public class WhenRunningTests() {
static {
ClassLoader.getSystemClassLoader().setDefaultAssertionStatus(true);
}
@Test(expected=AssertionError.class)
public void assertionsShouldBeEnabled() {
assert false;
}
}
If your are programming a web application using Tomcat the set the -enableassertions
in the server settings, not on the project settings.
In NetBeans 7.2.1 with Tomcat 6 or 7 go to: Tools (on the main menu) -> Servers -> Tomcat X.X -> Platform tab -> VM Options
and add -enableassertions
, then restart the server.
For regular Apps and Swing Apps:
If you are working on a Web App you'll have to use a method that enables assertions on the server:
Yes, it's a bug in NetBeans that it does not enable assertions when running unit tests (https://netbeans.org/bugzilla/show_bug.cgi?id=139035). What Adrian suggests will work (although the test failed, yet assertions were enabled for the code that I was concerned with). Another way is to edit build-impl.xml and add in the macro definition for junit (just search for "junit").
With a Maven project in netbeans 7.0, choose "File" -> "Project Properties ()".
In the window that appears, choose "Run", and add -enableassertions
to the "VM Options" textbox.