004.415.5
Лазченко В.Р. студент бакалавриата 4 курса факультет «Информатика и вычислительная техника»
научный руководитель: Остроух Е.Н.
стпреподаватель
Донской Государственный Технический Университет
Россия, г. Ростов-на-Дону ФОРМИРОВАНИЕ ОТДЕЛА ТЕСТИРОВАНИЯ В IT-КОМПАНИИ
Аннотация
Небольшая статья, в которой описаны основы построения отдела тестирования.
Ключевые слова
Формирование отдела, процесс разработки ПО, QA, IT.
Lazchenko V.R. undergraduate student 4 course, faculty "Computer Science and Engineering" Scientific adviser: Ostroukh EN, Senior Lecturer Don State Technical University Russia, Rostov-on-Don FORMATION OF THE DEPARTMENT OF TESTING IN IT-
COMPANY
Annotation
A brief article outlining the basics of building a testing department.
Keywords
Department formation, software development process, QA, IT.
В каждой IT компании по мере нарастания задач и проектов возрастает необходимость в обеспечении и тщательном контроле качества результатов. Времени и усилий разработчиков становится недостаточно, чтобы проанализировать всевозможные пользовательские способы работы с программным обеспечением и выявить дефекты, которые могут быть не связаны между собой и проявляться в самых неожиданных местах. Для решения этой задачи необходимо сформировать отдел тестирования, сотрудники которого смогут существенно повысить качество программного продукта, руководствуясь отдельной теоретической базой и прикладными инструментами локализации и фиксирования результатов. Чтобы правильно сформировать и организовать работу отдела тестирования, необходимо выполнить действия в несколько этапов.
1. Изучить внутренние процессы компании
В первую очередь необходимо определить, каким образом выстроен весь процесс разработки в компании. А именно, какая используется методология разработки ПО, и какие особенности её применения есть в
данной компании, как происходит взаимодействие существующих подразделений, а также внутреннее взаимодействие между сотрудниками. Также важно понимать, как выстроены бизнес-процессы, и какие задачи эффективности ставит перед собой компания.
2. Произвести анализ разрабатываемых продуктов
В 1Т-компании могут работать как над кроссплатформенным программным продуктом, так и над продуктами, которые имеют распространение лишь на одной программной платформе. В зависимости от типа разрабатываемого ПО, различается и процесс тестирования. Если компания работает только над одним продуктом или выполняет однотипные проекты, необходимо предусмотреть возможность внедрения автоматизированного тестирования.
3. Выбрать методику и инструменты тестирования
На данном этапе нужно определить методику формирования стратегии тестирования, определить необходимые виды тестирования, исходя из существующих возможностей и требований к результатам, определить общие алгоритмы процесса тестирования, Также нужно выбрать инструменты тестирования, назначение которых могут быть следующими:
1. Анализ и диагностика результатов разработки
2. Формирование результатов тестирования
3. Размещение тестовой документации
4. Автоматизация тестирования
4. Сформировать документацию
В перечень необходимой документации входит тестовая документация, план тестирования, отчет для руководства, должностная инструкция, а также регламент для сотрудников отдела. Тестовая документация должна содержать стандарты, в соответствии с которыми сотрудники будут формировать чек-листы, тест-кейсы и баг-репорты. План тестирования должен содержать стратегию, цели, задачи, требуемые ресурсы и критерии тестирования. В отчете для руководства необходимо отчитаться о выполненной работе и результатах за прошедший период, включая проблемы, с которыми пришлось столкнуться, и составить план работы на следующий период времени. В должностной инструкции указываются обязанности сотрудников, а в регламенте - указания при различных ситуациях.
Особенности организации ручного и автоматизированного тестирования
В большинстве компаний используются методология разработки, в основе которой лежит итеративная модель разработки. На первых этапах определяется функционал, который должен быть реализован или определенным образом модифицирован на данной итерации. Задача тестировщиков состоит в том, чтобы определить соответствие реализованного функционала ожидаемым требованиям и наличие дефектов в его реализации, а также проверить, были ли затронуты ранее работавшие участки программы. Для организации ручного тестирования достаточно указать стандарты
написания тестовой документации (при их наличии). В небольших проектах тестировщики самостоятельно должны определить, какие части программного продукта должны быть проверены при новых изменениях. Если проект большой, а реализация нового функционала достаточно объемная, целесообразнее провести декомпозицию и распределение задач между тестировщиками. В крупных проектах даже малейшие нововведения могут привести к существенным изменениям в ранее работавшем функционале. Чтобы определить потенциальные места возникновения дефектов, нужно понимать архитектуру построения и взаимосвязи компонентов внутри программы. Для автоматизации тестирования необходимо выбрать участки, где автоматизация анализа корректности возможна и результаты её проверки наиболее однозначны. Также важно регламентировать перечень ПО для автоматизации тестирования, возможные стандарты написания алгоритмов и другие указания, которые могут быть применены. Несмотря на быстрое развитие инструментов в области автоматизированного тестирования, ручное тестирование по-прежнему является наиболее эффективным с точки зрения выявления ошибок. Одни из самых важных рекомендаций - как можно чаще обновлять тесты и предусмотреть максимально возможную часть их покрытия.
В данной статье описаны основные этапы при построении отдела тестирования. Есть множество нюансов и проблем, которые могут возникнуть как при построении нового, так и при управлении уже существующим отделом тестирования. Поэтому желательно, чтобы руководитель отдела обладал опытом тестирования и глубоко понимал процесс разработки, чтобы самостоятельно выстроить наиболее оптимальный процесс тестирования в компании.