5.0

Оценить

Статьи 3723 5.0 1 голос читать 3 мин

От тест-кейса до баг-репорта: что должен знать профессиональный тестировщик

Статьи: От тест-кейса до баг-репорта: что должен знать профессиональный тестировщик

Всех людей, использующих компьютеры (и не только), можно отнести к профессии инженер по обеспечению качества. Хотим мы этого или нет, часто используя электронику, программы и любые созданные человеком артефакты (чаще новые относительно потребителя), мы проверяем качество и удобство использования устройств и программ, и так же часто бывает к месту поговорка «Первый блин комом» ;). Например, в процессе онлайн-оплаты или заказа на сайте, уверен, у вас были ситуации, когда что-то шло не так, как вы ожидали, это и была ошибка (или запрос на улучшение), вероятно, не блокирующая вашу деятельность и не критичная, но все-таки осадочек остался, раз вы её заметили.

На протяжении трех лет я работал на должности QA и считаю, что в IT-индустрии тестировщик, будучи частью scrum-команд, так же ценен, как и любой другой член команды.

Мне доводилось видеть различные аутсорсинговые компании, работающие в сфере тестирования, которые предоставляют полные интенсивные учебные курсы, чтобы превратить начинающих специалистов в экспертов QA. Большинство курсов QA больше связаны с тестированием ПО и ведут к тому, чтобы в перспективе стать разработчиком.

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

Основные навыки тестирования

В качестве базовых знаний студенты должны изучать тестовые артефакты (тестовую документацию) такие как: чек-лист, тест-кейс, тест-стратегия, тест-план, баг-репорт и тест-репорт.

Что это это такое? Давайте разберемся в вкратце.

Чек-лист (Check list) — это набор тестовых идей; простой, иногда поверхностный, лаконично (но информативно) описанный список идей для проверок. В большинстве случаев чек-лист используется тестировщиком как «черновик», чтобы задокументировать все идеи и мысли в голове, т.к. очень часто продукты достаточно сложные, с большим количеством функций, и количество проверок может достигать сотен, а такой объем информации с деталями достаточно сложно удержать в голове лично мне.

Тест-кейс (Test case) — пошаговое детальное описание проверки, с таким уровнем детализации, чтобы любой студент первого курса мог его выполнить.

Тест-стратегия (Test strategy) — описание стратегии тестирования. Цель её написания — документирование того, как будет проходить процесс тестирования. Например, очень удобно новому человеку на проекте (не только QA, но и разработчику, проектному менеджеру, бизнес-аналитику и т.п.) дать её (тест-стратегию) на прочтение, после чего человек будет иметь общее видение и понимание процесса тестирования и как тестирование взаимосвязано с остальными процессами на проекте.

Тест-план (Test plan) — детальное описание процесса тестирования. Обычно это очень объемный документ на шестьдесят и более страниц. В наше время он почти не применяется (в классическом понимании термина существует несколько стандартов тест планов с детальным описанием того, что должно быть задокументировано в тест-плане).

Баг-репорт (Bug report) — отчет об ошибке/баге. Заводится (записывается) в результате выполнения тест-кейсов, либо ином ее нахождении: мы можем увидеть ошибку и не выполняя тест-кейс, а случайно наткнувшись на нее.

Тест-репорт (Test report) — отчет о выполнении тест-кейсов, в нем обычно отмечается общая статистика, количество выполненных тест-кейсов и количество найденных ошибок.

Техники тест-дизайна

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

Классификация тестирования

Тестовые активности можно классифицировать по разным параметрам, поделить на виды, разложить на классы, распределить по уровням, организовать в «семейства» и т.п.

Студентам также должны преподавать принципы тестирования, рассказывать о том, как соблюдать баланс между объемом работ и рисками, как создавать эффективные тестовые планы, а также обучать навыкам управления временем для повышения своей продуктивности.

Основные дисциплины

Существует несколько основных направлений тестирования (в зависимости от природы приложения): тестирование мобильных приложений, тестирование WEB-приложений, когда интерфейс программ отображается в браузере, тестирование desktop-приложений, которые необходимо устанавливать в ОС. Также,можно выделить еще достаточное количество более узких специалистов-инженеров, обеспечивающих качество: проверка игр, проверка безопасности, проверка нагрузки и т.п.

Так как я выполнял проверки игр, я считаю, что для того, чтобы QA был эффективным, необходимым является понимание основных игровых дисциплин. Это дает возможность разобраться в основах программирования или же понять принципы анимации на базовом уровне. Я заметил, что многие студенты заканчивают технические специальности в университетах, но в итоге проходят курсы QA и впоследствии двигаются в этом направлении.

Также должно быть уделено особое внимание тому, как предотвращать проблемы до их обнаружения и что является в данный момент самым эффективным решением — все компании к этому стремятся. Ведь если разобраться, то меньше ресурсов (времени всех членов команды, денег, вычислительных мощностей и т.п.) уйдет на предотвращение ошибки, чем на её нахождение, документирование, починку и проверку.

По завершении курса студенты должны находить эффективные решения проблем и общаться со всеми членами команды разработки на одном языке.

Agile и Scrum должны лежать в основе процессов разработки, которые преподаются в этом курсе. Студенты смогут понять, по каким процессам и руководствуясь какой логикой ведется общение в команде и принятие решений. Введение в специальность подготовит студентов к трудовой жизни в компаниях. Должно быть уделено особое внимание тому, как предотвращать проблемы до их обнаружения, а также важности QA и основных моментов, таких как непрерывная интеграция, TDD и т. д.

Также должен быть сделан акцент на лидерстве и управлении проектами, поскольку от студентов ожидается, что они будут руководить группами тестировщиков, обеспечивая выполнение стратегии QA.

Артем Гордадзе

BDE в Dotcom Ventures Holding AG

Оцените материал

5.0
1