Включение утверждений в Netbeans
Я хочу сделать что-то вроде
java -enableassertions com.geeksanonymous.TestClass
Как мне это сделать?
8 ответов
Самый простой способ - использовать свойства Run. Свойство помечено как "VM Options".
Этот учебник содержит более подробную информацию и снимки экрана из NetBeans 5.5. Диалог очень похож в самой последней версии NetBeans; 6,8, которая доступна сегодня.
В проекте Maven в NetBeans 7.0 выберите "Файл" -> "Свойства проекта ()".
В появившемся окне выберите "Выполнить" и добавьте -enableassertions
в текстовое поле "Параметры VM".
Для обычных приложений и приложений Swing:
- Щелкните правой кнопкой мыши по проекту в Project Explorer.
- Выберите Свойства (внизу всплывающего меню)
- Выберите Run (под категориями)
- Задайте в поле "Параметры виртуальной машины" включение -enableassertions.
- Нажмите [OK]
Если вы работаете над веб-приложением, вам придется использовать метод, который включает утверждения на сервере:
- Меню: Инструменты / Серверы
- Выберите свой сервер (слева)
- Нажмите на стол платформы (в центре справа)
- Задайте в поле "Параметры виртуальной машины" включение -enableassertions.
- Нажмите [Закрыть]
Я не знаю о Netbeans, но вы также можете программно включить утверждения (возможно, это вам тоже поможет).
public class WhenRunningTests() {
static {
ClassLoader.getSystemClassLoader().setDefaultAssertionStatus(true);
}
@Test(expected=AssertionError.class)
public void assertionsShouldBeEnabled() {
assert false;
}
}
Щелкните правой кнопкой мыши по вашему проекту и выберите Properties -> Run -> Add new configuration
(выберите имя для конфигурации, в моем случае я назвал его "утверждение"). Затем выберите VM options
и писать -enableassertions
,
Если вы программируете веб-приложение с использованием Tomcat, установите -enableassertions
в настройках сервера, а не в настройках проекта.
В NetBeans 7.2.1 с Tomcat 6 или 7 перейдите по ссылке: Tools (on the main menu) -> Servers -> Tomcat X.X -> Platform tab -> VM Options
и добавить -enableassertions
, затем перезапустите сервер.
Да, в NetBeans есть ошибка, из-за которой не включаются утверждения при запуске модульных тестов ( https://netbeans.org/bugzilla/show_bug.cgi?id=139035). То, что предлагает Адриан, будет работать (хотя тест не удался, но для кода, который меня интересовал, были включены утверждения). Другой способ - отредактировать build-impl.xml и добавить определение макроса для junit (просто выполните поиск "junit").
Самым простым способом в последней версии Netbeans 8.0 будет... Перейти в RUN-> Установить конфигурацию проекта-> перейти к "настроить"
затем снова появляется всплывающее окно, нажмите "Настроить" перед VM Options и выберите "ea" в опциях.