Кто такой тестировщик и чем он занимается
Знакомые иногда спрашивают — что такое тестирование, кто такой тестировщик и чем он занимается? Попробуем ответить на все эти вопросы в этой заметке.
Сначала попробуем ответить в общем и целом:
1. Что такое тестирование?
Тестирование — это процесс сравнения фактического поведения объекта тестирования с ожидаемым поведением. Объектом тестирования может быть программа, сайт и т.д.
В зависимости от области, которая ближе человеку, можно объяснить термин «тестирование» по-разному. Например, человек работает учителем. Как объяснить учителю, кто такой тестировщик? Тестировщик — это человек, который проверяет, как ученики делают домашние задания (объектом тестирования в данном случае являются домашние задания), если фактическое поведение — то, что пишут ученики в домашних заданиях — сходится с тем, что является идеальными представлениями учителя (ожидаемым поведением), то ученик скорее всего получит пятерку. Если не сходится — учитель фиксирует баг — т.е. отклонение от ожидаемого поведения и может дать шанс ученику сделать домашнюю работу лучше.
Другой пример. На праздник решили купить шикарный шоколадный торт, принесли домой, начали ужинать, а кому-то из нас попался осколок стекла. Возможно, кондитерский цех недавно остался без отдела контроля качества, возможно что-то ещё, но очень печально, что мы как потребители это почувствовали не в лучшем свете.
2. Кто такой тестировщик?
Тестировщик — это специалист, который сравнивает фактическое поведение объекта тестирования с ожидаемым поведением.
Но кто-то скажет — это всё скучная теория… А вот если бы спросить самих тестировщиков, чем они занимаются… Сказано — сделано!
Мы спросили у тестировщиков (в чатах тестировщиков и не только, примечательно, что в опросе участвовали не только тестировщики), что они думают о том, что такое тестирование и чем они сами занимаются:
Вот мнения в разрезе работы в команде разработки:
Аноним1: тестирование — это комплекс мероприятий по обеспечению качества продукта, а тестировщики — это те, кто доводит качество продукта до приемлемого уровня.
Аноним2: тестирование — это процесс выявления совпадения функций ПО и требований, тестировщик — это специалист, который выявляет соответствие ожидаемого результата и фактического.
Виктор: тестирование — это поиск дефектов в продукте, тестировщики проводят тестирование на разных проектах, пишут документацию для тестов, делают отчеты, предотвращают появление багов при релизе.
Richard Gears: если простым языком, то тестировщик — это человек, который ищет ошибки в программах и на сайтах, которыми вы пользуетесь, до того как вы их найдёте и увидите. Делает он это с помощью разных методик и инструментов, взаимодействуя с программистами и теми людьми, которые пишут документы, по которым эти программы и сайты создаются.
Volodimir: я обычно говорю, что проверяю программу за программистами.
Аноним3: разработчик пишет код, тестировщик проверяет конечный результат на наличие багов.
Nur114: дефект, обнаруженный пользователем, самый дорогой, тестирование требует постоянного общения с командой, так как порой определить что является дефектом, а что нет — бывает сложно.
Capsolo: тестировщик находит расхождения между требованиями к выпускаемому продукту и текущим его состоянием.
Аноним4: это проверка соответствия реального и ожидаемого результатов.
Оптимистичные и не очень высказывания про работу тестировщиков:
Alex_124: это доведение разработчика до ненависти тебя и твоей деятельности сравнения ожидаемого и фактического результатов :)
Аноним5: тестирование нужно, чтобы всё везде было хорошо.
Tyanini: а для меня тестировщик — человек, радующий за качество и счастье конечного пользователя.
И ещё немного:
JFagor: тестирование отвечает за то, чтобы что-то вело и взаимодействовало так, как заявлено, и не иначе. Счастье / радость или ошибки от тестирования вообще не интересуют ни уровни и стороны до, ни уровни и стороны после. Это всего лишь попытки измерения отдельных участков или совокупности участков работ.
С тестировщиками всё понятно. А вот к кому тестировщики обращаются, когда нужно узнать ожидаемое поведение системы… А, точно! Аналитики!
Спросим у аналитиков, кто такие тестировщики:
Аноним6: тестировщик — это человек, который после этапа разработки проверяет, что реализованная функциональность соответствует тому, что есть в аналитике.
Аноним7: тестирование помогает спасти программу от ошибок, которых не предусмотрели раньше.
Хорошо, но без разработчиков картина явно не будет полной.
Что же думают разработчики про тестирование:
Очень емкое и запоминающееся высказывание от Dotnetsoftwareengineer: тестировщики это те, кто портят настроение разработчикам.
Fvnever: в нормальной части индустрии это не тестировщики, а QA-инженеры — занимаются разными вещами в зависимости от специализации. В широком же смысле QA — это процесс обеспечения качества продукта. Сюда входит и CI, и планирование / реализация тестов, и участие в планировании релизов.
Аноним8: тестировщики — это те, кто могут по-другому взглянуть на продукт, свежим взглядом, и всегда подсказать, если что-то пошло не так.
Немного провокационный вопрос для участников опроса, но всё же — не менее интересные ответы:
Вопрос: чем тестирование отличается от разработки?
Ответы:
Аноним9: тем, что тестировщики работают с результатом разработки.
Alex_124: тестирование — это часть разработки.
Виктор: разработка создаёт продукт, а тестирование проверяет на качество данный продукт согласно требованиям.
Аноним10: разработчик создаёт баги, тестировщик их находит :)
И, наконец, забавные факты про тестирование:
Виктор: всегда развиваешься, участвуешь в создании продукта, высоко ценится твоя работа.
Аноним11: ничто нельзя проверить на 100%.
QA automation engineer: прекрасный факт — востребованность, ужасный — конкуренция.
Аноним12: самое ужасное, что мало кто разбирается в тестировании, но все знают, как это делать правильно.
Alex_124: прекрасный факт — тестировщик необходим для экономии и преумножения финансов бизнеса.
Надеемся, что теперь стало чуточку понятнее, что такое тестирование и чем занимаются тестировщики.
Апостол 3 года назад #