Указатель NULL
- это тот, который указывает на никуда. Когда вы разыскиваете указатель p
, вы говорите «дайте мне данные в месте, хранящемся в« p ». Когда p
является нулевым указателем, местоположение, хранящееся в p
, является nowhere
, вы говорите «Дайте мне данные в месте« нигде ». Очевидно, он не может этого сделать, поэтому он выбрасывает NULL pointer exception
.
В общем, это потому, что что-то не было правильно инициализировано.
Eclipse является безусловно лучшим, я использовал. Свяжите JUnit с плагином покрытия кода, и Eclipse, вероятно, будет лучшим тестером единицы.
Почему Вам нужен бегун GUI? Вы не можете только запустить тесты от самого IDE?
В .NET у нас есть TestDriven.net, в Java должно быть что-то эквивалентное. Можно проверить ИДЕЮ IntelliJ, она имеет встроенную поддержку поблочного тестирования.
Существует автономный бегун JUnit, который имеет UI, но я рекомендую использовать один из встроенных исполнителей тестов в Java IDE (Eclipse, Netbeans и IntelliJ, у всех есть хорошие). Они все поддерживают JUnit и большую часть поддержки TestNG также.
JUnit прекратил иметь графических бегунов после выпуска JUnit 4.
Если у Вас действительно есть более ранняя версия JUnit, можно использовать графический исполнитель тестов путем ввода в командную строку [1]:
java junit.swingui.TestRunner [optional TestClass]
С дополнительным тестовым классом указанные тесты будут немедленно работать. Без него можно ввести класс в GUI.
Преимущества запущения Ваших тестов, которыми этот путь состоит в том, что у Вас нет издержек всего IDE (если Вы уже не выполняете один). Однако, если Вы уже работаете в IDE, таком как Eclipse, интеграция превосходна и является намного меньшим количеством стычки для получения тестового выполнения.
Если Вы имеете JUnit 4 и действительно не хотите использовать IDE, чтобы запустить тесты или хотеть текстовую обратную связь, можно выполнить текст исполнитель тестов UI. В том же духе как ранее, это может быть сделано путем ввода в командную строку [1]:
java junit.textui.TestRunner [TestClass]
Хотя в этом случае TestClass не является дополнительным по очевидным причинам.
[1] принятие Вы находитесь в корректном рабочем каталоге и пути к классу, было установкой, которая может быть вне объема для этого ответа