|
|
|||||
strange mood
|
Unit testing
Решил уже повзрослеть наконец, и освоить test-driven development.
Для флэша нагуглил вот такую штуку: http://asunit.org/ Кто пользовался? Как оно? Есть другие варианты? Чем они лучше/хуже?
__________________
тонкий тролль, осеянный благодатью |
|
|||||
А что можно проверить юнит тестами? Понятно если нужно много XML парсить, работоспособность парсинга можно проверять юнит тестами. Что еще?
__________________
while(1) {} |
|
|||||
блогер
Регистрация: Oct 2005
Адрес: Днепродзержинск - город Брежнева и других логопедов
Сообщений: 1,421
Записей в блоге: 4
|
Правильность работы кусков программы можно проверить. Много нервов может сберечь, писать только их надо.http://blog.gamedeff.com/?p=252
PS: Тоже интересно прикручивание юнит тестов для флэша
__________________
Бобры отвечают на вопросы не потому, что знают на них ответы; они отвечают потому, что их спрашивают. |
|
|||||
В java уже давно используются как unit-тесты, так и PMD-тулзы, т.к. там в этом есть реальная необходимость. Хотелось бы узнать насколько эта тема развита во Flash.
И еще, посоветуйте путевую систему для автоматического тестирования (a.k.a build-сервер) для флеша. Слышал что пользуются известным Cruise control. Кто-нибудь прикручивал Team City (в яве пользовался им с удовольствием)? |
|
|||||
Цитата:
Единственный минус - колбеки тестировать невозможно, по сравнению с AsUnit, но большинство тестов можно свести к синхронным (проверено) Цитата:
С обращением к серверу сложнее - надо либо локальный разворачивать(это уже не Unit ), либо лепить заглушки - но вполне можно Чистую логику модели тестировать - самое то, контроллеры, до фига знающие - гораздо сложнее Есть классы, которые просто невозможно написать без тестов и багов одновременно (например свою реализацию конвеера Потапенко, ну или систему хитрого распространения событий с блокировкой, определением target и т.д.) - тут уж можно/не можно, а выбора другого нет Последний раз редактировалось expl; 02.01.2011 в 22:11. |
|
|||||
Я строю приложение из модулей, которые отдельно тестирую
типичная структура проекта src--main -- test -- interfaces Пакет interfaces нужен чтобы разделить основную (подгружаемую, папка main) часть, от вкомпиленой (интерфейсы модуля) для подгружаемых модулей. Такое разбиение проекта на подпроекты позволяет тестировать что угодно и как угодно. В том числе и отдельные сложные функции. Пытался использовать юнит тесты. Попахивает жесткой параноей и убийством времени
__________________
Сам себе репортер |
|
|||||
Цитата:
Каждый тест - отдельное приложение, каждый запускаете отдельно и каждый "органолептическим" методом проверяете что ничего не отвалилось? Я тоже так делаю для элементов, которые тяжело/практически невозомжно протестировать с помощью unit-тестов, но тестировать надо (модулей у меня нет - приходится инициализировать часть классов, чтобы запусить проверку отрисовки какой-нть вьюшки) Но зачем отказываться от автоматики? И с юнит-фреймвёрком то удобнее логику тестировать, чем самому смотреть цыферки на экране и силиться вспомнить, в каком порядке они должны появиться и какие они должны быть? Последний раз редактировалось expl; 02.01.2011 в 23:00. |
|
|||||
Еще раз задам вопрос по сабжу. Посоветуйте путевую систему для автоматического тестирования для флеша. Слышал что пользуются известным Cruise control. Кто-нибудь прикручивал Team City?
И еще, есть ли в природе вменяемая книжка по asunit? |
|
|||||
strange mood
|
Хоть я и создал эту тему больше года назад, после внезапного всплытия продолжаю с интересом за ней следить.
surlac, вам от меня персональный плюс в карму за то, что пользуетесь поиском. Когда я игрался с asunit, я нашел в нем одну недоделку: там не сделано нормальное сравнение ByteArray в ассерте. Все сравнения выполняются при помощи "==", но для ByteArray это не катит, и ассерт всегда валится. Исправленной версии, к сожалению, у меня не сохранилось, но, насколько я помню, все решается достаточно просто: нужно добавить проверку типа и персонально для ByteArray сделать побайтовое сравнение.
__________________
тонкий тролль, осеянный благодатью |
Часовой пояс GMT +4, время: 04:17. |
|
« Предыдущая тема | Следующая тема » |
Опции темы | |
Опции просмотра | |
|
|