- PVSM.RU - https://www.pvsm.ru -
Как и многие другие стартапы в наших проектах, в первый год существования родились горы кода, которые хоть и были неплохо покрыты unit-тестами, но всё же оставались практически не охвачены с точки зрения функционального тестирования. В первое время мы обходились небольшим чек-листом. Проблем не возникало, пока на проекте было несколько тестировщиков, хорошо знающих все тонкости проекта. Но, как это всегда бывает, если один человек из небольшой команды уходит, то необходимо найти ему адекватную замену. И вот тут возникли большие трудности.
Наш проект имеет очень сложную структуру: один только раздел может иметь документацию более чем на 100 страниц. Плюсом, конечно, идет паровоз из недокументированных фич и индивидуальных “хотелок” заказчика, которые начинающие члены команды могут принять за баги.
К счастью, в нашей компании существует и активно развивается направление по работе со студентами и начинающими специалистами. Недостаток с кадрами легко можно устранить, но вот как быстро подключить новичка к работе? Было решено внедрить подробные тест-кейсы, описывающие весь набор функций проекта. Для решения задачи на первом этапе мы решили не гнаться за платными решениями, а использовать одну из бесплатных систем управления тестами. Выбор пал на TestLink.
Сам TestLink написан на PHP, и особых проблем с установкой не возникло. Мы создали базу данных, дали права на папочки, и установка прошла как по маслу.
Далее мы завели в системе проект, создали структуру проекта и начали писать тесты. Сама цель внедрения данной системы заключалась в том, чтобы мы смогли выявить полезность или бесполезность подобных систем для наших проектов.
После того, как мы написали и проверили свои тесты, пришло время опробовать систему на людях. Мы распределили готовые тесты среди начинающих сотрудников и стажеров. Первый же прогон показал, что использование подробных тестов позволило найти множество багов в потаенных местах проекта, куда обычно не дотягивались руки в силу приоритетности работы других фич.
TestLink в настоящее время используется не в полную силу. Он включает возможность использования не только тестов, но и условий. Использование условий видится очень перспективной возможностью данной системы. Условия относятся к тестам как многие ко многим, что позволяет реализовать несколько следующих моделей использования:
Ввиду того, что наши тесты пока не успели обзавестись условиями, ниже мы не будем о них упоминать.
Качество тестирования после внедрения TestLink, однозначно, возросло. Мы очень благодарны этой системе управления тестами за подробные отчеты после прогона тестов и за то, что она познакомила нас с тем, как необходимо подходить к тестированию. Сейчас мы имеем неплохую отлаженную систему тестирования своего проекта, благодаря которой новый сотрудник спустя буквально полдня будет полностью включен в работу с проектом и, самостоятельно сделав прогон всех тестов, сможет понять до 80% функций проекта.
Несмотря на все достоинства, столкнулись мы и с рядом недостатков системы. Естественно, всё очень субъективно, и для других компаний наши претензии будут казаться необоснованными. Мы не исключаем, что возможно, некоторые из недостатков можно устранить, изучив документацию или покопавшись немного в коде, но цель стояла немного иная. Нам было необходимо быстро оценить ценность подобной системы внутри нашей компании.
Достоинства:
Недостатки:
Продемонстрируем работу системы на примерах из наших проектов. Полный обзор системы делать не имеет смысла. Основной посыл, в данном случае, направлен на то, чтобы показать, как выглядит система внутри, и сможете ли вы с ней ужиться или не стоит даже устанавливать. Поэтому мы опустим этапы установки системы на сервер, а также этапы заведения проекта.
Первое, что видит тестировщик, открыв TestLink ‒ это стартовый экран (Рис. 1).
Рис. 1 ‒ Стартовый экран работы с проектом в TestLink
Отсюда начинается любая активность в проекте. Здесь выполняется:
Страница редактирования тестов включает в себя такие возможности, как:
Рис. 2 ‒ Редактирование тестов в TestLink
Далее рассмотрим распределение тестов по тест-планам.
Для этого следует разбить тесты на различные группы, которые затем могут использоваться для прогонов, подходящих под заданные условия. На рисунке 3 видно, что в данном случае тесты распределены по видам тестирования, которые мы проводим для выбранного проекта. Для других проектов у нас есть различные варианты разбиения на тест-планы, например, на проектах, где нет разделения тестов по группам и нужно каждый раз прогонять все тесты без исключения, мы завели тест-планы для Production и Staging окружений.
Рис. 3 ‒ Редактирование тест-плана
Назначать тесты членам вашей команды очень просто. В левой части окна (рис. 4) можно выбрать как один тест, так и группу тестов, а также использовать фильтры для поиска нужных тестов. Затем можно назначить тестровщика, ответственного за прогон конкретного теста на конкретной платформе, с помощью чек-боксов и выпадающих списков в правой части раздела.
Рис. 4 ‒ Распределение задач по тестировщикам в TestLink
После распределения тестов прогон выглядит, как на рисунке 5. На нем доступно следующее:
Кроме перечисленных элементов, можно увидеть и дополнительную информацию:
Рис. 5 ‒ Прогон тестов в TestLink
Сразу после распределения тестов мы уже можем наблюдать за появлением данных по отчетам тестировщиков в разделе “Отчеты” TestLink. В разделе представлено множество опций:
Рис. 6 ‒ Система формирования отчетов о прогонах в TestLink
Надеюсь, наш опыт внедрения TestLink откроет для вас новые горизонты. Возможно, кто-то наконец откажется от ведения документации в таблицах. Нам бы хотелось услышать в комментариях ваше мнение о TestLink или о подобных разработках, как вы их используете, какова степень интеграции ваших инструментов, что удобно и неудобно.
Автор: kentastik
Источник [1]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/testirovanie/68238
Ссылки в тексте:
[1] Источник: http://habrahabr.ru/post/234483/
Нажмите здесь для печати.