Что такое тестирование и зачем оно бизнесу

Интернет-магазин выкатил обновление корзины в пятницу вечером. В понедельник выяснилось: часть покупателей за выходные оплатила заказы дважды — при одном клике на кнопку «Оплатить» карта списывала сумму два раза, если соединение на секунду подвисало. Служба поддержки утонула в обращениях, бухгалтерия неделю сверяла возвраты, а часть клиентов в раздражении ушла к конкурентам. Всего этого можно было избежать, если бы кто-то до выпуска нажал кнопку «Оплатить» и посмотрел, что произойдёт, если нажать её ещё раз, пока страница ещё грузится.

Тестировщик за ноутбуком сосредоточенно ищет дефект в приложении, рядом — тревожный индикатор ошибки на экране

Чему научишься за этот урок:
— объяснить своими словами, что такое тестирование программного обеспечения;
— назвать, кто в компании этим занимается и когда;
— посчитать вслух, во что реально обходится бизнесу дефект, пропущенный до выпуска.

Что такое тестирование

Тестирование программного обеспечения — это проверка того, что программа делает именно то, что от неё ожидают, и не делает того, чего от неё не ожидают, — причём эту проверку проводят ДО того, как продукт увидят реальные пользователи. Ключевое слово здесь — «до»: тестировщик ищет проблему заранее, пока её может увидеть только он сам, а не тысяча покупателей одновременно.

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

Кто проверяет и когда

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

Тестирование происходит не один раз в конце, а на разных этапах: пока пишется код, когда функция готова целиком, и ещё раз — перед самим выпуском. Про то, на каких именно этапах и по каким моделям это устроено, — отдельная тема одной из следующих глав.

Во что обходится пропущенный дефект бизнесу

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

  1. Прямые деньги. Компания обязана вернуть клиентам лишние списания — это чистый убыток, а не просто неудобство.
  2. Время команды. Служба поддержки отвечает на сотни обращений вместо своей обычной работы; бухгалтерия вручную сверяет платежи; разработчик, который мог бы делать новую функцию, чинит старую.
  3. Доверие клиентов. Часть людей, увидевших двойное списание, больше не вернётся в магазин — и это не разовая потеря, а потеря будущей выручки от этого клиента.
  4. Репутация. Скриншоты двойного списания расходятся в соцсетях быстрее, чем компания успевает всё исправить.
  Один пропущенный дефект (двойное списание) складывается из:

  +------------------------+   +------------------------+
  |  Прямые деньги         |   |  Время команды         |
  |  (возврат списаний)    |   |  (поддержка, бухгалтерия,|
  |                        |   |   разработчик чинит)   |
  +------------------------+   +------------------------+
  +------------------------+   +------------------------+
  |  Доверие клиентов      |   |  Репутация             |
  |  (не вернутся)         |   |  (жалобы в соцсетях)   |
  +------------------------+   +------------------------+

  Всё это дешевле одной проверки "нажми кнопку дважды" до выпуска.

Продукт, на котором вы будете практиковаться

На протяжении курса вы будете применять всё, что изучаете, на одном учебном продукте — образовательной платформе с регистрацией, каталогом курсов, промокодами, записью и оплатой. Это специально подготовленная тестовая среда, а не боевой сайт: в ней безопасно нажимать кнопки дважды и вводить любые странные данные, ровно как в примере с оплатой выше.

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

Контрольный вопрос. Тестирование программного обеспечения — это:

АПроверка того, что программа делает ожидаемое и не делает неожиданного, до того как её увидят пользователи
БНаписание кода, который реализует нужную функцию
ВОбучение пользователей тому, как правильно работать с программой

Подсказка: Обрати внимание на слово «до» в определении из урока.

Проверить ответ →

Реальная проверка — на нашей платформе, бесплатно и без регистрации. Открыть задачу и ввести ответ →

Контрольный вопрос. Чем тестирование отличается от разработки?

АРазработка создаёт программу, тестирование — отдельно проверяет её и намеренно ищет способы сломать
БТестирование и разработка — одно и то же, просто разные названия
ВТестирование — это часть разработки, выполняемая тем же человеком одновременно с написанием кода

Подсказка: Урок явно разделяет эти два действия как самостоятельные.

Проверить ответ →

Реальная проверка — на нашей платформе, бесплатно и без регистрации. Открыть задачу и ввести ответ →

Контрольный вопрос. Из чего складывается реальная цена пропущенного дефекта с двойным списанием (выбери все подходящие)?

Выберите все верные варианты.

АВозврат клиентам лишних списанных денег
БВремя поддержки, бухгалтерии и разработчика на исправление
ВСтоимость лицензии на систему тестирования
ГПотеря доверия части клиентов и репутационный урон

Подсказка: В уроке названы четыре составляющих цены дефекта — сверь с ними каждый вариант ответа.

Проверить ответ →

Реальная проверка — на нашей платформе, бесплатно и без регистрации. Открыть задачу и ввести ответ →

Контрольный вопрос. Как в уроке называется специалист, чья единственная задача — системно искать проблемы в программе до выпуска? Ответь одним словом.

Подсказка: Это профессия, которую вы осваиваете на этом курсе.

Проверить ответ →

Реальная проверка — на нашей платформе, бесплатно и без регистрации. Открыть задачу и ввести ответ →

Контрольный вопрос. На чём вы будете практиковаться на протяжении всего курса?

АНа специально подготовленной тестовой среде
БНа боевом сайте компании

Подсказка: В уроке прямо сказано, что практиковаться на боевом сайте небезопасно.

Проверить ответ →

Реальная проверка — на нашей платформе, бесплатно и без регистрации. Открыть задачу и ввести ответ →

Задание. Разработчик написал код кнопки «Оплатить». Тестировщик специально нажал эту кнопку дважды подряд, пока страница ещё грузилась, чтобы проверить, спишутся ли деньги дважды. Как одним словом называется то, чем сейчас занят тестировщик? Ответь одним словом.

Подсказка: Разработка создаёт функцию, а здесь её целенаправленно проверяют на способ сломать.

✅ Готово, если: ты ввёл(а) верный ответ, и онлайн-проверка его приняла.

Проверить ответ →

Реальная проверка — на нашей платформе, бесплатно и без регистрации. Открыть задачу и ввести ответ →

Задание. После двойного списания часть клиентов ушла к конкурентам и больше не возвращалась в магазин. К какой из четырёх составляющих цены дефекта из урока это относится? Ответь одним словосочетанием из двух слов.

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

✅ Готово, если: ты ввёл(а) верный ответ, и онлайн-проверка его приняла.

Проверить ответ →

Реальная проверка — на нашей платформе, бесплатно и без регистрации. Открыть задачу и ввести ответ →

Задание. На нашем учебном продукте нашли похожий дефект: при двойном клике на кнопку «Записаться на курс» ученик записывается на один и тот же курс дважды, и место в группе занимается за двоих. Опиши в 2-3 предложениях, какие последствия это может иметь для компании — используй минимум ДВЕ из четырёх составляющих цены дефекта, разобранных в уроке (не просто «будет плохо», а конкретные последствия).

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

Подсказка: Подумай, что случится с местами в группе, если система решит, что группа уже заполнена наполовину «призраками».

✅ Готово, если: ответ раскрывает то, что просит критерий приёмки в задании выше.

Онлайн-проверка ответа появится позже

Задание. Разработчик утверждает: «Мы не будем тратить время на тестирование этой мелкой функции — если что-то сломается, быстро починим после того, как заметим». Назови одним-двумя словами, какую составляющую цены дефекта этот подход недооценивает сильнее всего — ту, что связана с тем, что дефект в проде видят реальные люди, а не команда.

Подсказка: Речь не про деньги и не про время своей же команды — про то, что думают о продукте посторонние люди, столкнувшиеся с багом.

✅ Готово, если: ты ввёл(а) верный ответ, и онлайн-проверка его приняла.

Проверить ответ →

Реальная проверка — на нашей платформе, бесплатно и без регистрации. Открыть задачу и ввести ответ →

Контрольный вопрос. Что из перечисленного точнее всего описывает работу тестировщика по сравнению с разработчиком, который тоже иногда проверяет свой код?

АТестировщик проверяет системно и целенаправленно ищет нестандартные ситуации, а не просто убеждается, что программа включается
БТестировщик и разработчик проверяют программу совершенно одинаково
ВТестировщик вообще не должен ничего проверять сам, только читать код

Подсказка: Урок прямо называет разницу в глубине и системности проверки.

Проверить ответ →

Реальная проверка — на нашей платформе, бесплатно и без регистрации. Открыть задачу и ввести ответ →

Контрольный вопрос. Почему на курсе безопасно нажимать кнопки дважды и вводить любые странные данные?

АПотому что практика идёт на образовательной платформе, специально подготовленной для этого, а не на боевом сайте реальной компании
БПотому что баги на учебной платформе никто не отслеживает
ВПотому что все действия там выполняет только преподаватель курса

Подсказка: В уроке прямо описан продукт, на котором вы будете практиковаться, и почему на нём не страшно экспериментировать.

Проверить ответ →

Реальная проверка — на нашей платформе, бесплатно и без регистрации. Открыть задачу и ввести ответ →

Что дальше

Мы определили тестирование в общих чертах и увидели, во что обходится бизнесу пропущенный дефект. Но внутри самого дефекта на самом деле скрываются три разных понятия, которые часто путают: ошибка, дефект и отказ — они не одно и то же, и разница между ними важна для точного описания проблемы. Разберём это в следующем уроке.

Назад к навигатору курса  ·  ↑ В начало урока  ·  ⌂ В начало курса  ·  Вперёд →

Школа Виктора Комлева