2013-09-24 3 views

ответ

192

Вы можете использовать метод:

import static org.hamcrest.Matchers.is; 
import static org.hamcrest.Matchers.nullValue; 

assertThat(attr.getValue(), is(nullValue())); 
+0

это говорит метод nullValue() не определен – user2811419

+1

@ пользователь2811419. Вам нужно импортировать 'IsNull'. Это статический метод в этом классе. Просто выполните «статический импорт» или используйте «IsNull.nullValue()». –

+0

Добавьте 'import static org.hamcrest.core.IsNull.nullValue;' к вашему классу. –

26

Почему бы не использовать assertNull(object)/assertNotNull(object)?

+5

+1 Обычно я предпочитаю утверждения Hamscrest, но это один случай, когда утверждение Junit является более читаемым, IMO. – spaaarky21

+3

assertThat() дает гораздо лучшее протоколирование, которое многие другие утверждают * методы. Стандарт тестового кодирования, который я использую для поддержки assertThat() по всем другим методам утверждения по этой причине. – efelton

+0

Главное преимущество при использовании assertThat vs assertNul заключается в том, что он ближе к выраженной фразею Englsih, просто попробуйте прочитать какие-либо из ваших утверждений, чтобы проверить это. – belgoros

7

Используйте следующие (из Hamcrest):

assertThat(attr.getValue(), is(nullValue())); 
11

Если вы хотите hamcrest, вы можете сделать

import static org.hamcrest.Matchers.nullValue; 

assertThat(attr.getValue(), is(nullValue())); 

В Junit вы можете сделать

import static junit.framework.Assert.assertNull; 
assertNull(object); 
Смежные вопросы