![]() |
|
| Правила Форума редакция от 22.06.2020 |
|
|||||||
|
|
Окажите посильную поддержку, мы очень надеемся на вас. Реквизиты для переводов ниже. |
|
![]() |
|
|
Опции темы | Опции просмотра |
Language
|
|
|
#1
|
|
Неактивный пользователь
Пол:
Регистрация: 17.01.2008
Сообщений: 27
Репутация: 4
|
Интересно, кто-нибудь здесь серъёзно занимается тестированием при помощи DUnit или другой автоматизации?
Я пока освоил: - тестирование именования компонентов (очень полезно в больших проектах на пачку людей) - тестирование корректности маштабирования формы. - тестирование неизменности интерфейса. - тестирование формы на функциональность. Какие есть проблемы: - при тестировании на неизменность: -- мешается курсор клавиатуры (не умею прятать) -- фон под прозрачными формами (есть такие) -- не очень быстро - при тестировании формы на функциональность -- очень много приходится писать руками (т.е. для каждой формы пишешь пачку тестов). При её изменении - дописываешь/переписываешь эти тесты... Что хотелось бы: - Обсудить что можно ещё тестить. - обсудить/обменяться универсальными тестами. - Обсудить облегчение труда по написанию специфических тестов |
|
|
|
| Реклама: | принтер Canon imageCLASS LBP6030 | удалить зуб в москве цена | Магазин бытовой техники: телевизор купить недорого в москве - переходи на сайт ТАЙМТВ! | ррк2d(120)-1000х500-m-220-n-k-g | Магазин бытовой техники: яндекс маркет мультиварка купить - переходи на сайт ТАЙМТВ! |
|
|
#2
|
|
Неактивный пользователь
Регистрация: 04.05.2008
Сообщений: 5
Репутация: 1
|
Я думаю, что DUnit не стоит использовать для таких целей, как проверка именования компонентов и целостность UI.
Для наименование компонентов легче использовать одно соглашение по наименованию компонентов, классов, процедур, функций. ЮИ можно прогнать тестами типа Rational Robot. Да и вообще лучше разделить функциональное тестирование и модульное. Функциональным пусть занимается тестер с Robot'ом, а модульные пусть пишет программист. Модульные должны гарантировать, что программист не допустил ошибок в логике работы алгоритмов. Т.е. имея заведомо правильные и неправильные входные данные, программист пишет тест, который передает эти данные в некоторую функцию и получает результат сверяет его с эталонным. Внутри теста проходит сравнение и выдается результат. Например функция проверки пользователя, при неправильной имени и пароле будет генерировать fail, при правильном - pass. Заодно будем проверяться сможет ли вообще корректно сработать эта функция, не происходит ли внутри нее исключения. P.S. И не надо писать тест на каждый маломальскую иконку или кнопочку, берите более крупно. Проверяйте логику. |
|
|
|
|
|
#3
|
|
Неактивный пользователь
Пол:
Регистрация: 17.01.2008
Сообщений: 27
Репутация: 4
|
Rational Robot - Инструмент для автоматизации записи и воспроизведения сценариев тестов. Сценарии тестов записываются на специальном языке программирования и могут быть получены либо автоматически (путем записи действий пользователя при
работе с системой), либо вручную. OpenCTF (надстройка к DUnit) - прекрасно решает вопросы: - тестирование именования компонентов. (не нарушил ли кто правила именования, нету ли "лишних" компонент и т.п.) - тестирование отдельных свойств компонентов. (например dataSourse у тех у кого он есть, hint у кнопок и т.п.) Есть готовые интерфейсы, примеры и тесты. На создание первого проекта-теста ушло где-то около дня. На второй проект я потратил уже около 10 минут. Но это всё в рамках модульного тестирования. Просто делается "универсальный тест" Вернее 10000 тестов отдим модулем. Почему в рамках? Да потому что соглашение об именовании это правильно. Но я пишу не один, да и сам как показали тесты иногда забываюсь. Далее. Читаем что делает RR. Вопрос - а почему это не тест юнита? Он, родимый. Только скрипт пишется/генерится не на каком-то новом птичьем языке, а на родном - том же что и приложение. Про иконки и логику - я неправ в том что смешал мухи и котлеты. OpenCTF и кусок на его основе - теже юнитовые тесты для элементов интерфейса. Позволяет избегать мелких ошибок. Или отлавливать их массого. Ещё ряд моих тестов интерфейса - RR нужно учить делать тоже самое (писать скрипт). Зачем? на делфях проще ;) А вот нормального генератора я так и не нашёл. Чтоб мои щелчки мышью в скрипт превращал. Ещё много чего не нашёл. Ищу ;) Ну и кстати RR денег стоит. А делфю я себе уже купил. |
|
|
|