Ответ
NullPointerException (NPE) возникает при попытке использовать ссылку, которая указывает на null, как на существующий объект.
Простейший пример:
String text = null;
int length = text.length(); // NullPointerException здесь
Другие частые сценарии в контексте тестирования:
- Тестирование методов, не проверяющих входные параметры:
public void processUser(User user) { String name = user.getName(); // NPE, если user == null } // В тесте: @Test void processUser_NullUser_ThrowsException() { assertThrows(NullPointerException.class, () -> processor.processUser(null)); } - Работа с коллекциями, возвращающими
null:Map<String, String> map = new HashMap<>(); String value = map.get("nonExistentKey"); // value = null value.toUpperCase(); // NPE - Автораспаковка (unboxing)
nullв примитив:Integer count = null; int primitiveCount = count; // NPE при распаковке
Для QA: Искусственное создание NPE полезно для написания негативных тестов, проверяющих устойчивость системы к некорректным данным и корректность обработки исключений.