Зачем нужна система управления тестированием?

05.08.2022 258
IBS Training Center Telegram
Подписывайтесь на наш канал в Telegram:
больше материалов экспертов, анонсы бесплатных вебинаров и задачки для IT-специалистов
Подписаться
Тестирование – одна из ключевых составляющих разработки ПО. На этапе тестирования проверяют качество продукта и его соответствие требованиям заказчика с помощью специального конечного набора тестов. Одно из преимуществ этого процесса – специальные системы управления тестированием, которые позволяют следить за всеми тестами из единого центра и вести отчетность о процессах.

Для чего требуется тестирование ПО?

Для начала разберемся, почему важно тестирование ПО. Сейчас, когда главным трендом стало технологическое развитие и компании борятся за клиентов, улучшая качество своих продуктов, на первый план выходит новая цель – создавать удобные и стильные продукты. Но не всегда получается делать их без сбоев и ошибок. Застраховаться от рисков помогает тестирование. Оно позволяет обнаружить как явные, так и скрытые недостатки: от соответствия функционала техническому заданию до корректности данных и удобства использования.

Тестирование проводится как профессиональными тестировщиками, так и пользователями, но часто без первого не обойтись. ПО стало сложнее и его функционал расширился, поэтому без определенных знаний и опыта полностью протестировать его невозможно. Даже при лучшем раскладе могут возникнуть ошибки, связанные с человеческим фактором, которые не были найдены ранее. А из-за высокой конкуренции, самая незначительная ошибка может навредить передовому решению. По этой причине только профессиональные тестировщики могут обеспечить тестирование, позволяющее выявить и грамотно описать ошибки, оценить производительность, работу загруженного ПО и эффективность его безопасности. Кроме того, только профессионалы могут разработать необходимые утилиты для проверки конкретного проекта, если существующие инструменты не позволяют решить поставленные клиентом задачи.

Видов тестирования ПО очень много, но их можно разделить на три большие группы:

  • функциональные тесты – помогают оценить функции и особенности ПО, внешнее поведение, взаимодействии с другими системами и его безопасность;
  • нефункциональные тесты – к ним относятся тесты, определяющие те характеристики ПО, которые могут быть измерены различными величинами. Это все виды тестирования производительности (нагрузочное, стрессовое, объёмное, стабильности), тестирование установки, удобства пользования (юзабилити), тестирование на отказ и восстановления и конфигурационное тестирование;
  • тестирование, связанное с изменениями – проводится после исправления выявленных в ходе функционального и нефункционального тестирования ошибок и недостатков, и его главная задача – подтвердить факт того, что проблема устранена. К таким видам тестирования относятся дымовое, регрессионное, тестирование сборки и санитарное тестирование (проверка согласованности или исправности).

На каких принципах и на основе какой методологии осуществляется тестирование ПО?

Тестирование всегда направлено на выполнение одной цели – оценить качество продукта и принять правильные решения о его дальнейшем развитии. Сам принцип ведения проектов независимого тестирования всегда основан на привязке к методологии разработки, прозрачной отчетности о качестве тестируемого ПО, максимально простых и понятных планах тестирования и тест-кейсах.

«Мы всегда обсуждаем применение результатов тестирования ещё на старте проекта, так как от этого, во многом, зависит и план тестирования. Например, требуется оценить качество выполнения работ по контракту внешнего разработчика, понять насколько точно реализовано ТЗ – это один вариант. Совершенно другой вариант – это встроиться в процесс agile-разработки и привнести в команду свои компетенции в части тестирования, как по процессу, так и с точки зрения самих специалистов. Третья история – это нагрузочное тестирование, когда перед заказчиком стоит задача определить объём закупки оборудования для будущей промышленной системы. Всегда важно понимать цели, которые ставятся перед процессом тестирования, но, в конечном счёте, они всегда влияют на качество конечного продукта и направлены на одну глобальную цель – не допустить некачественный продукт к конечному клиенту. За это мы всегда боремся, доносим эту мысль до заказчиков и это для нас максимально важно», Николай Марченко, директор отделения автоматизированного тестировании.

Почему наша компания пришла к созданию своих собственных инструментов тестирования?

Более 15 лет практики тестирования в компании IBS AppLine помогли нам разработать собственные инструменты тестирования, которые могут автоматизировать часть процессов. На базе накопленных знаний и экспертизы наши специалисты задались целью ускорить старт проектов, повысить качество тестирования, уменьшить количество ошибок и упростить введение в работу новичков. При этом мы решили опираться на три фактора:

  • отсутствие российских аналогов;

  • дороговизна платных инструментов зарубежных вендоров;

  • слабая функциональность Open Source продуктов в части удобства настроек и графического интерфейса.

С появлением собственных инструментов автоматизации тестирования в IBS AppLine увидели необходимость организации управления тестированием из единого центра, в результате чего была разработана система управления тестированием «Кайман».

Что такое система управления тестированием ПО?

Именно система управления тестированием (Test Management System, TMS) объединяет все активности и дает доступ к отчетности по всему процессу. Она нужна тем, кто понимает ценность тестирования и хочет им управлять из единого центра, а не собирать множество разных отчетов.

Где используется системы управления тестированием и как с ними работать?

Системы управления тестированием применяются для организации и проведения тестирования в ряде проектов нашей компании по заказной разработке. «Кайманом», о котором мы говорили ранее, пользуются владельцы продукта, аналитики, тест-дизайнеры, тестировщики, специалисты по автоматизированному и нагрузочному тестированию, тест-менеджеры.

Если простым языком описать классический процесс работы с «Кайманом», то он выглядит примерно так:

  • тест-дизайнеры разрабатывают тестовую модель, пишут тесты или чек-листы. В результате тестовая модель предстает в структурированном виде;

  • в свою очередь аналитики проверяют созданные тесты на предмет полноты покрытия требований. В «Каймане» этот процесс прозрачен и управляем: вы можете увидеть, какая часть тестов провалидирована, а сколько еще осталось.

  • при планировании прогонов тест-менеджер определяет набор тестов из тестовой модели и назначает ответственных тестировщиков. Именно тестировщики осуществляют прогоны тестов и уже существующих данных позволяет оценить и спланировать трудоемкость прогонов;

  • после проведения тестирования тест-менеджер создает отчетность в различных аспектах качества тестируемого ПО.

Важно отметить, что в части автоматизированного и нагрузочного тестирования процессы проходят немного по-другому, однако, их можно назвать «классическими». Если вы уже знакомы с этими видами тестирования, то вам не составит труда разобраться с принципами автоматизации, которые «Каймана».

Какой следующий этап развития системы управления тестированием и его области применения?

Если говорить о будущем систем управления тстированием, то в IBS AppLine выделяют два основных вектора развития:

  • Комплексная система управления тестированием, закрывающая все возможные потребности клиента в различных видах тестирования ПО.

«В этом направлении мы планируем добавлять поддержку новых видов тестирования (помимо уже существующей поддержки функционального, автоматизированного и нагрузочного тестирования). Например, тестирование UI\UХ. Этот вид тестирования пока ещё не слишком распространен в нашей стране, но потребность в нём возрастает с каждым месяцем. Количество пользовательских приложений растёт и соответственно растёт конкуренция между ними. В такой ситуации предоставлять клиентам наилучший пользовательский опыт становится для бизнеса жизненно необходимым», – Николай Марченко, директор отделения автоматизированного тестирования.
  • Инновационный продукт, позволяющий решать насущные проблемы тестирования и его заказчиков.
«В первую очередь, здесь мы говорим о сокращении времени на тестирование. «Кайман» будет ускорять проверки ПО как в части планирования и работы с тестовой моделью (за счёт интеллектуального анализа требований и существующих тестов), так и в части непосредственного прогона тестов (за счёт упрощённой полуавтоматической подготовки автотестов на основе «ручного» тест-дизайна», — уточнил Николай Стрельцов, заместитель директора отделения автоматизированного тестирования.

Хотите узнать больше об опыте наших тестировщиков? Присоединяйтесь к курсам из этого раздела и узнайте, как вывести тестирование в ваших проектах на новый уровень.



Расскажи друзьям:

Комментировать
Как не пропустить самое интересное?
Подписывайтесь на наш ежемесячный дайджест!
Спасибо.
Вы подписаны на ежемесячный дайджест.
Пользователь только что записался на курс ""
Спасибо!
Форма отправлена успешно.