Тестировщик программного обеспечения — профессиональный эксперт в области тестирования программного обеспечения. Он играет фундаментальную роль в жизненном цикле программного обеспечения, поскольку проверяет, является ли программа завершенной, функциональной и эффективной. Работа тестировщика ПО является частью деятельности, обеспечивающей качество продукта. Сегодня многие стремятся через курсы тестировщика попасть в высокооплачиваемую профессию.
Тестирование программного обеспечения — это процесс оценки, который позволяет тестировщику проверить, полностью ли программное обеспечение соответствует требованиям заказчика (проверка и валидация программного обеспечения,), т. е. соответствует ли оно требованиям программирования, взаимодействует ли оно должным образом с аппаратным обеспечением, правильно ли оно реагирует на все ввод с приемлемой скоростью, удобство его использования и соответствие стандартам безопасности.
Чтобы эффективно выполнять свою работу, тестировщик должен, прежде всего, знать цель, для которой было разработано программное обеспечение. Поэтому он общается с аналитиками, программистами, клиентами и/или руководителями, чтобы определить требования программы, справочные материалы и требования конечных пользователей. Обладая этой информацией, тестер программного обеспечения может выбрать наиболее подходящий метод и методы тестирования.
После анализа требований тестировщик программного обеспечения готовит план тестирования, то есть документ, в котором указываются запланированные мероприятия по тестированию. В плане тестирования указываются компоненты, которые будут тестироваться, различные действия по тестированию, необходимые ресурсы и график действий. Тестер программного обеспечения определяет спецификации тестов и спецификации процедур тестирования, документируя используемый метод, выбор различных тестов и последовательность действий, запланированных для их выполнения.
По окончании этапа подготовки тестировщик программного обеспечения проводит все запланированные мероприятия по тестированию с целью выявления неисправностей и дефектов компьютерной программы. Тестер изучает исходный код и проверяет, работает ли он в разных средах и условиях (например, в разных операционных системах или на разных платформах разработки), поскольку разные условия тестирования могут привести к разным результатам. Затем он сообщает о результатах тестирования через отчеты о выполнении тестов, документируя все выполненные действия и условия, при которых они выполнялись.