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

Многие люди, заблуждаясь, считают, что тестировщики — это некие люди-обезьянки, которые бездумно клацают по кнопкам в процессе тестирования. Но это не так. Как вы думаете, далеко ли улетит самолёт, если его будет тестировать такой человек-обезьянка? Скорее всего, он вообще не взлетит. 

Так что это за люди — тестировщики?

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

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

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

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