Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Тестирование софта 
V
    Опции темы
cppGhost
Дата 20.1.2014, 14:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 101
Регистрация: 24.4.2013

Репутация: нет
Всего: нет



День добрый. есть софт, в который постоянно добавляется новый функционал. тестирование как процесс совсем запущено и проводится почти как опыт на закачике (благо пока терпят). есть большое желание этот процесс сделать нормальным. первый вариант нанять 2-3 тестировщика, но он невозможен, поэтому я смотрю в сторону тестирования со стороны программиста. с чего начать? что лучше использовать? софт связан сильно с gui, но есть безусловно и рабочие функции. Кто что посоветует? Спасибо.
PM MAIL   Вверх
bsa
Дата 20.1.2014, 19:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



почитай про юниттесты.
PM   Вверх
cppGhost
Дата 21.1.2014, 06:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 101
Регистрация: 24.4.2013

Репутация: нет
Всего: нет



Конечно я в общем посмотрел информацию по данной теме, но юнит тесты не дали мне представления о том, как именно сделать тест, если работат тесно связана с пользовательским вводом. То есть имеется окно, в котором бывают текстовые поля, нестандартные комбобоксы, списки, деревья и прочая лабуда. Мне было интересно мнение и опыт людей, которые имеют практический опыт в данной области =))
PM MAIL   Вверх
Guinness
Дата 21.1.2014, 07:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 310
Регистрация: 21.6.2009
Где: Зеленоград

Репутация: нет
Всего: 10



Цитата(cppGhost @  21.1.2014,  07:46 Найти цитируемый пост)
Конечно я в общем посмотрел информацию по данной теме, но юнит тесты не дали мне представления о том, как именно сделать тест, если работат тесно связана с пользовательским вводом

Если Вы работаете с Qt, то там есть возможность тестирования GUI. Но, как правило, интереснее написать юниттесты для бизнес-логики приложения. Т.е., допустим, у Вас есть окно для ввода логина и пароля. По нажатию на клавишу "Войти", введенные данные отправляются в класс(функцию), обрабатывающий данное событие. Вот для этого класса вы и описываете все возможные тестовые ситуации. Если у Вас есть ограничение на размер пароля(допустим, не менее 8 символов), то Вы создаете случаи, которые бы протестировали все возможные варианты с длиной пароля.
Таким образом, если у Вас в GUI нет бизнес-логики, то вполне можно протестировать приложение и без участия графического интерфейса. Однако, как мне кажется, у большинства библиотек для юниттестирования должна быть эмуляция нажатия на клавиши, ввода данныхз в поля и т.п.
PM MAIL   Вверх
vinter
Дата 21.1.2014, 09:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Explorer
****


Профиль
Группа: Завсегдатай
Сообщений: 2735
Регистрация: 1.4.2006
Где: Н.Новгород

Репутация: 13
Всего: 56



Unit testing не имеет никакого отношения к тестированию UI. Модульное тестирование исчерпывающе объясняет себя своим названием - это тестирование модуля, изолировано. Т.е. класса, функции и т.п. модульных примитивов. UI тестирование это уже функциональное тестирование и оно выполняется людьми, как правило. Часть этого можно переложить на автоматика и для разных языков и сред существуют как отдельные программы, так и средства в библиотеках(Qt, как правильно заметили выше, имеет такие средства. 

Функциональными тестами программист не занимается.


--------------------
Мой блог
PM MAIL WWW   Вверх
cppGhost
Дата 21.1.2014, 12:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 101
Регистрация: 24.4.2013

Репутация: нет
Всего: нет



Цитата

Функциональными тестами программист не занимается

Спасибо за полезное замечание, не задумывался об этом. Ну если так, то действительно попробую наладить процесс хотя бы для бизнес логики
PM MAIL   Вверх
vinter
Дата 21.1.2014, 14:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Explorer
****


Профиль
Группа: Завсегдатай
Сообщений: 2735
Регистрация: 1.4.2006
Где: Н.Новгород

Репутация: 13
Всего: 56



Для погружения в модульноё тестирование, я бы порекомендовал ознакомится с The Art of Unit Testing. Конкретно это издание я не читал, только предыдущие, но книга произвела хорошее впечатление. То, что все примеры на .NET не имеет значения, там всё понятно. Единственная проблема для плюсовиков, как мне кажется, это то, что они начнут завидовать чёрной завистью, после того как сравнят модульное тестирование на .NET с оным на C++ smile

Так же, для старта, посмотри на boost.test и gtest; лично я использую вторую, но это выбор ничем не обусловлен - я не использовал boost.test. 
Когда узнаешь, что такое mock, у гугла есть gmock, который хорошо работает с gtest

Это сообщение отредактировал(а) vinter - 21.1.2014, 14:56


--------------------
Мой блог
PM MAIL WWW   Вверх
akizelokro
Дата 23.1.2014, 00:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Крокодил
**


Профиль
Группа: Участник
Сообщений: 761
Регистрация: 30.7.2007

Репутация: 1
Всего: 5



Тестирование UI ставится в интернет-задачах, в частности, на JavaScript. (Лямбда-функции, подозреваю, тоже оттуда взяты). Заставьте программиста пописать две недели контролы на JS.


--------------------
a = a + b; b = a - b; a = a - b;
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0707 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.