Работа тестировщика разноплановая, так как проверке подвергается каждый уровень разработанного продукта. И если этапы разработки распределяются между отделами, то тестировщик служит звеном между ними. Начинающему тестеру тяжело определится, что будет входить в его обязанности в первые дни работы. Именно этот вопрос будет раскрыт далее.
Базовые знания Junior-тестировщика
Тестировщик – инженерная профессия и базовые знания разработки также необходимы. Важно знать, что представляют собой языки программирования, уметь разбираться в них как минимум на уровне интуиции. Это необходимо для дальнейшей обучаемости. Работая тестировщиком, придется постоянно адаптироваться под новые среды разработки и языки программирования.
Общие обязанности начинающего тестера
Младший тестер точно столкнется со следующей работой:
- Составление документации.
Самым главным документом тестировщика является тест-кейс. Этот документ содержит последовательность действий, необходимую для полной проверки функционала ПО. Кейс описывает, каким образом надо добиться необходимого функционала и помогает проверить продукт без прочтения документации.
Часто тест-кейс путают с тест-планом. В тест-плане подробно расписан список работ, тайминг и способ их выполнения. Также указаны ресурсы, необходимые для выполнения работ.
- Применять стратегию тестирования «черный ящик».
Данный метод применяется для проверки работы со стороны внешнего мира без каких-либо знаний о внутреннем устройстве приложения.
- Работа с системами учета дефектов типа Bugs Everywhere или BugTracking System.
Такие программы помогают тестерам контролировать баги и учитывать пожелания пользователей, следить за их выполнением. Также эти программы могут отслеживать эффективность разработчиков и тестировщиков.
Самым ценным знанием Junior-тестера при работе с системами учета дефекта является понимание жизненного цикла дефекта, о котором подробнее можно узнать на курсах тестировщиков от QA Start Up
Базы данных и тестирование web
Тестирование БД− фактор, определяющий эффективность продукта. На этом этапе тестер сталкивается с определением узких мест баз данных, где его главным инструментом становятся метрики. К метрикам относятся транзакции, длительность выполнения операторов, эффективность использования индексов, число операций, выполнение сортировок, измерение производительности и т.д.
Для выполнения тестирования баз данных необходимо составлять SQL-запросы и разбираться в структуре БД.
Кроме БД, необходимо разбираться в web-технологиях, без них никуда. Если 15 лет назад тестировщик мог не столкнуться с web за долгий период работы, то на сегодняшний момент это практически невозможно.
Тестер должен проверять приложения на кросс-браузерность, проверять валидность верстки, веб-формы, которыми пользуется клиент (обязательность заполнения полей и т.п.). На этом этапе тестировщик также становится копирайтером, проверяя наполняющие контент тексты на грамматические и синтаксические ошибки.
Второй частью тестирования web-технологий является проверка со стороны сервера. Именно тут и пригодятся знания администрирования ОС. Сюда же входит проверка в условиях ограниченности ресурсов и нагрузочное тестирование.
Проектирование тестов различными методами
Выделяют три основных метода:
- Деление на классы эквивалентности.
Этот метод является помощником тестировщика, так как его цель − сократить количество тестов, не упуская серьезных багов. Дело в том, что многие тесты заведомо не найдут новых ошибок, следовательно, их можно не проводить.
- Анализ граничных значений.
Исходные данные, а точнее, границы входных переменных часто приводят к ошибкам. Анализ таких значений необходим для их устранения.
- Список возможных решений.
Составление таблицы по этому методу наглядно демонстрирует, выполнение каких условий ведет к определенному действию. Эта таблица помогает каждому участнику разработки.
Стоит отметить, что по данным http://qastartup.com.ua/ в крупных IT-компаниях Junior-tester часто выполняет однообразную работу, которую иногда можно заменить ботом. Но подобная практика скоро исчезнет.