Тестирование как искусство |
24.07.2025 00:00 |
Креативность в изобразительном искусстве и тестированииСколько себя помню, меня всегда интересовало изобразительное искусство. Особенно я любила рисовать, используя разные материалы — от угля до масла. Я умоляла маму записать меня в художественную школу, но этого не случилось… по крайней мере, пока я была ребенком. Вместо этого я стала IT-специалистом, и сейчас работаю инженером по качеству. Ни капли не жалею! Однако моя любовь к изящным искусствам не угасала — и в прошлом году я наконец записалась на уроки рисования. К моему удивлению, я заметила много общего между рисованием, живописью и тестированием программного обеспечения. Ни у художников, ни у тестировщиков нет жестких требований к выполнению работы. Вместо этого они много экспериментируют, разбираясь, как достичь оптимального результата. От созерцания чистого листа перед собой до представления своего труда миру — мы стремимся создать отличный продукт. Борьба с чистым листом: создание стратегии Художники никогда не начинают сразу рисовать объекты на чистом холсте. Сначала они делают «подмалевок» — базовый слой цвета, который помогает определить контраст и оттенки. Это придает работе глубину и объем. Также подмалевок может служить контуром для будущего расположения цвета и композиции. Для тестировщиков «подмалевком» является тест-стратегия — набор идей, который направляет проектирование тестов. Тест-стратегия может включать в себя:
Содержание стратегии будет варьироваться в зависимости от контекста. Приведённый выше пример — это формат, который хорошо зарекомендовал себя в моей команде с течением времени. Спасибо Ирье Штраус за его составление. И подмалевок, и тест-стратегия помогают нам визуализировать желаемый результат, увидеть в целом, что нужно сделать и как. Время реализации: добавляем слои и сохраняем фокусВыбор инструментовКогда общий план ясен, а идеи хорошо сформированы, пора приступать к реализации. Так же, как художник смешивает краски и использует разные кисти, тестировщики готовят и используют свои инструменты. Невозможно назвать все инструменты, которые применяются в тестировании — их выбор зависит от контекста и конкретной задачи. Вот примерный список инструментов, которые я использую в своей работе: Проектирование тестов и управление тестированием:
Взаимодействие с продуктом:
Отчётность:
Этот список не исчерпывающий, но он даёт хорошее представление о том, что я использую в ежедневной работе. Как только инструменты готовы, художник или тестировщик начинает творить магию. Стиль и техника, конечно, у каждого свои, но в любом случае, слой за слоем появляется картина — от широких мазков кисти до мелких завершающих штрихов. GIF, показывающий создание натюрморта слой за слоем Работа с холстом в целомС точки зрения тестирования вы можете добавлять слои, варьируя сложность ваших тестовых чартеров. Логично начать с тестирования системы в целом — решает ли продукт или функция ту задачу пользователя, которую мы хотим решить? Работает ли «счастливый путь»? Это может показаться очевидным, но легко попасть в ловушку, углубляясь в несущественные детали (фокусируясь на тестировании компонентов или проверяя, что UI идеален до пикселя), и не проверяя критический путь. Приведу пример. Мы однажды планировали выпустить новую функцию с поддержкой переменных внутри текста сообщения для персонализации. Другими словами, теперь можно было написать что-то вроде «Привет, {firstName}!», и появлялось имя пользователя. Готовя тестовую стратегию, я выявила возможные риски. Одна часть системы, включающая сложную обработку, показалась мне вероятным источником проблем. Когда функция была готова к тестированию, я сначала проверила эту часть и нашла баг. Как я была горда! Мои приготовления оправдались, мое предчувствие подтвердилось, знания системы и опыт тестирования окупились. Я продолжила изучать эту часть системы и обнаружила ещё несколько проблем. Однако самая важная часть осталась непротестированной — я не проверила, работает ли основная функция новой возможности, отправка сообщения! С тех пор я всегда начинаю тестирование с проверки главного сценария - и только после этого проверяю, что система остаётся совместимой с предыдущими версиями, что интеграция между разными частями работает, что компоненты реализованы согласно дизайну и корректно обрабатывают данные, и многое другое… Вы также можете рассматривать разные уровни тестирования — приёмочное, системное, интеграционное и юнит — как слои, переходя от высокоуровневой валидации к более тонким моментам. Завершённая картина: когда нужно отложить кистьВ живописи И в тестировании важно знать, когда остановиться. Изображение натюрморта. В центре — фиолетовая футболка. Под ним — два цилиндрических сосуда, раскрашенных в синий и фиолетовый цвета. Фон — зелёная драпированная ткань, на которой стоят объекты. Помните Мону Лизу? Леонардо да Винчи работал над ней почти семнадцать лет до самой смерти и так и не назвал картину совершенной и законченной. Художники могут трудиться над одной картиной десятилетиями, а тестировщики — бесконечно долго корпеть над одной версией продукта. Чем внимательнее вы рассматриваете реализацию, тем больше у вас может возникать вопросов и сомнений. Кажется, всегда можно задать ещё один вопрос. Но если вам сложно остановиться, возможно, вы сосредоточены на одном маленьком аспекте продукта и забываете о системе в целом. Секрет тут прост — сделайте шаг назад и сделайте паузу. Это даст вам возможность взглянуть на систему по-новому. Спросите себя: «Достиг ли я того, к чему стремился?» На службе у других: делимся своим произведением искусства Каждое произведение искусства имеет свою цель. Никто не тратит время на создание чего-то просто чтобы потом положить результат в ящик и забыть о нём. Мы хотим показать своё мастерство. За каждым творением или продуктом стоит идея, которую мы хотим поделиться с миром. Высшая цель искусства — это самовыражение и коммуникация, это также эксперимент и новаторство, исследование существующего состояния и его запечатление, чтобы остановить его и показать другим. Тот же принцип применим и к тестированию. Мы проводим эксперименты, чтобы изучить продукт И чтобы поделиться результатами с заинтересованными сторонами. Изображение картины в процессе создания, установленной на мольберте. Картина изображает натюрморт, который физически находится за полотном. Когда вы смотрите на произведение искусства в галерее, иногда трудно понять смысл всех символов на полотне. Но часто интерпретации и художественная критика часто помогают перевести на общедоступный язык мысли и идеи, вложенные создателем в произведение. Аналогично, результаты тестирования нужно эффективно донести до заинтересованных лиц. За количеством найденных проблем, охватом тестирования, графиками и таблицами в отчётах скрывается история, которую тестировщики рассказывают лучше всего. |