ProDomainer.ru - Клуб Домейнеров  
     

Войти через OpenID
Left Nav Справка ПортфолиоАукцион (39) Календарь Поиск Сообщения за день Все разделы прочитаны Right Nav

Left Container Right Container
 
Старый 30.05.2013, 22:43   #1
Член Клуба ProDomainer.ru
 

Netbeans + PHPUnit + PEAR + Denwer

Краткий HOWTO по установке и работе с PHPUnit в такой среде как у меня.

Установка (развернуть)

Использование:
Полезные ссылки:
Первое использование - здесь неплохо рассказаны азы, с примером автоматически созданных тестов и т.п. Естественно с первого раза пример не завелся - нужен бутстрап (см. ниже). Пример советую выполнить для понимания.
Ссылка из первой статьи - чуть более развернутые азы. Честно - еще не читал

С какими моментами столкнулся:
При создании проекта, или перед созданием для него тестов нужно в свойствах проекта (правая кнопка на проекте + свойства) указать папку с тестами (в закладке исходные файлы), а также (внимание!!!) в закладке PHPUnit поставить галку использовать начальную загрузку и жмякнуть "создать", или указать-скопировать готовый bootstrap.php если у вас уже есть похожий проект. Что это за файл такой? Этот файл выполняется в самом начале, при запуске тестов. В нем должны быть прописаны ваши автозагрузчики классов, универсальные механизмы создания окружения и т.п. В частности тест по первой ссылке сразу же не завелся, ибо скотина такая - не смог найти класс calc.
@2DO: я так и не понял что делает галка "использовать начальную загрузку для создания новых модульных тестов. Разобраться.

Для автогенерации тестов выделяем наш файлик, жмякаем в меню "Сервис/Создать тесты PHPUnit". Этот пункт не появляется если файлик не выделен.
Я так и не понял как заставить Нетбинс перегенерировать класс тестов после изменения в исходном классе. С одной стороны это логично - перегенерация убила бы все мои ручные изменения, а скелет-тесты это только начало тестирования. С другой стороны хотелось бы таки получить эти изменения, чтобы потом накатить их на свои изменения. Переименование файла теста, создание нового, потом мержинг этих двух веток изменений как-то криво....

Выполнение теста - правой кнопкой по файлику, выбираем "тестировать". Радуемся.

В любой ситуации выбор всегда за вами. Вы либо гуляете под дождем, либо просто под ним мокнете.
Mendel вне форума   Ответить с цитированием
Старый 03.06.2013, 17:12   #2
Член Клуба ProDomainer.ru
 

MOCK-объекты (когда ты подменяешь часть функционала класса на заглушки) http://habrahabr.ru/post/140217/

Тестирование классов работающих с базой. Костыльно-велосипедное решение, но ИМХО довольно симпатичное, попроще и стабильнее чем DBunit. В принципе если приложение не имеет у себя транзакций, то такой подход имеет право на жизнь. - http://habrahabr.ru/post/72716/

Заумно и академически правильный подход про базы и пхпюнит. В принципе почитать можно. http://habrahabr.ru/post/113872/

Серия из четырех статей про ПХПюнит. Вроде неплохой учебный материал - http://habrahabr.ru/post/87922/

В любой ситуации выбор всегда за вами. Вы либо гуляете под дождем, либо просто под ним мокнете.
Mendel вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

Ваши права в разделе
BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
Быстрый переход


Часовой пояс GMT +4, время: 08:14.