Урок 1 из 8 · 15 мин · обновлено
Кто такой тестировщик и зачем он нужен
Чем занимается тестировщик, почему бизнесу выгодно находить ошибки заранее и чем ручной тестировщик отличается от автоматизатора.
Чем занимается тестировщик
Любое приложение делают люди, а люди ошибаются. Аналитик не учёл редкий случай, разработчик неправильно понял задачу, дизайнер не подумал о маленьком экране. Задача тестировщика — найти такие ошибки раньше, чем их увидят пользователи.
На практике это выглядит так:
- проверяет новые функции — работает ли всё так, как описано в задаче;
- ищет ошибки там, где их не ждут: в редких сценариях, странных данных, на других устройствах;
- описывает найденное так, чтобы разработчик понял, что сломалось и как это повторить;
- проверяет исправления — и то, что они не сломали что-то другое.
Ошибку в программе называют багом (от английского bug — «жук»). Подробно о том, что считается багом, — в уроке 3.
Почему бизнесу это выгодно
Представьте интернет-магазин, где скидка по промокоду считается неправильно: вместо 10% магазин отдаёт 50%. Посмотрим, во что обходится эта ошибка в зависимости от того, когда её нашли.
| Когда нашли | Что придётся сделать |
|---|---|
| В требованиях, до разработки | Поправить одну строчку в описании задачи — 10 минут |
| Во время тестирования | Разработчик исправит код, тестировщик проверит — пара часов |
| После выпуска | Магазин продаёт в убыток, поддержка разбирает обращения, команда срочно выпускает исправление, а деньги уже потеряны |
Чем позже найдена ошибка, тем дороже её исправить. Поэтому хорошие тестировщики подключаются к задаче как можно раньше — ещё когда её только описывают. Как это выглядит, разберём во втором уроке.
Тестирование и QA — не одно и то же
В вакансиях тестировщика часто называют QA-инженером. QA (quality assurance) — это «обеспечение качества»: всё, что команда делает, чтобы ошибок было меньше. Сюда входят договорённости о том, как писать требования, как проверять код, когда и что тестировать.
Тестирование — часть QA: конкретная проверка продукта. На практике в небольших командах тестировщик занимается и тем и другим, поэтому названия часто используют как синонимы.
Ручное и автоматизированное тестирование
- Ручной тестировщик проверяет продукт сам: открывает приложение, проходит сценарии, думает как пользователь и как скептик. Это самый частый вход в профессию.
- Автоматизатор (в вакансиях — AQA, automation QA) пишет программы, которые выполняют проверки автоматически. Такие тесты можно запускать хоть каждый час, и они не устают.
Автоматизация не заменяет ручное тестирование: программа проверяет только то, что ей велели. Заметить, что кнопка неудобная, а текст непонятный, может только человек.
Три мифа о профессии
«Тестировщик просто тыкает кнопки». Нет: прежде чем проверять, тестировщик решает, что проверять и в каком порядке, чтобы за ограниченное время найти самые опасные ошибки.
«Хороший тестировщик найдёт все ошибки». Проверить всё невозможно: даже у простой формы с тремя полями тысячи комбинаций. Задача — найти самые важные ошибки и снизить риск, а не гарантировать, что их нет совсем.
«Это просто ступенька, чтобы стать программистом». Кто-то потом уходит в разработку, но тестирование — самостоятельная профессия: можно расти до ведущего специалиста, руководителя отдела качества или эксперта в автоматизации. Куда расти — в уроке 8.
Какие качества пригодятся
- Внимательность — замечать мелочи, которые другие пропускают.
- Любопытство — хотеть понять, как всё устроено и что будет, «если вот так».
- Логика — продумывать, где ошибки вероятнее всего.
- Умение ясно писать — баг, который нельзя понять, не исправят.
- Дипломатичность — сообщать об ошибках так, чтобы разработчик не обиделся, а исправил.
Попробуйте сами. Представьте приложение доставки пиццы. Запишите 10 вещей, которые могут пойти не так, когда человек делает заказ. Не думайте о коде — думайте как пользователь, у которого что-то пошло не по плану.
Пример ответа
- Можно заказать 0 пицц.
- Сумма в корзине не совпадает с суммой к оплате.
- Промокод применяется дважды.
- Можно выбрать доставку на прошедшее время.
- Адрес не помещается в поле и обрезается.
- Если дважды нажать «Оплатить», создаются два заказа.
- После неудачной оплаты корзина очищается.
- На маленьком экране кнопка «Оплатить» уезжает за край.
- Нельзя оформить заказ, если в телефоне указан пробел.
- Уведомление «Заказ доставлен» приходит, пока курьер ещё в пути.
Сравните со своим списком: какие случаи вы не учли?
Мини-тест: проверьте себя
Закрепите урок: несколько вопросов, разбор ответов — в конце.
-
Что главное в работе тестировщика?
Тестировщик проверяет, что продукт работает так, как задумано, и сообщает команде обо всём, что работает иначе.
-
Когда исправить ошибку обычно дешевле всего?
Ошибку в требованиях исправляют правкой текста. Та же ошибка после выпуска — это переделка кода, повторные проверки, обращения в поддержку и потерянные деньги.
-
Чем автоматизатор тестирования отличается от ручного тестировщика?
Автоматизатор пишет программы-тесты, которые могут прогонять сотни проверок каждый день. Ручной тестировщик проверяет сам, думая как пользователь.
-
Что из этого — миф о профессии?
Хорошее тестирование — продуманная работа: тестировщик заранее решает, что и как проверить, чтобы за разумное время найти самые важные ошибки.