Люди по-разному понимают суть тестирования. Некоторые говорят, что тестирование – это только проверка пользовательского интерфейса. Другие думают, что тестирование – это просто поиск дефектов. Но главной целью каждого тестировщика должно быть качество. Хороший тестировщик всегда сосредоточен на улучшении качества продукта, а не только на поиске дефектов.
Друзья, поддержите нас вступлением в наш телеграм канал QaRocks. Там много туториалов, задач по автоматизации и книг по QA.
1. Тестирование – это качество
Тестирование – это предоставление качественного продукта клиенту. Он должен быть качественным во всех отношениях: использования, графического интерфейса и функционала, целостности данных, безопасности.
2. Тестирование – это идеи
Любое приложение можно протестировать различными методами. При тестировании каждый тестировщик может предложить свой подход и идею. Мы, как тестировщики, должны проанализировать и выбрать наиболее подходящий подход.
В некоторых случаях необходимо проводить плановое тестирование, в то время как в других ситуациях именно ad-hoc тестирование лучше помогает выявить проблемы в приложении. Оценка подходов должна быть проведена до начала тестирования. Приложения, работающие с огромным количеством данных, должны тестироваться иначе, чем приложения, работающие с огромным количеством пользователей.
3. Тестировать – значит думать, как пользователь
Когда мы тестируем приложение, мы всегда должны думать с точки зрения пользователя. Представьте, что вы используете приложение. Когда вы выполняете различные действия в приложении, такие как заполнение форм, отправка сообщений или просмотр информации, существует определенный порядок шагов, которые вы должны осуществить. Идеально было бы, чтобы все эти шаги были связаны и выполнялись легко и без проблем.
Также важно, чтобы приложение было понятным пользователю. Например, текст сообщений и предупреждений должен быть написан простым языком.
Когда мы тестируем приложение, мы также обращаем внимание на “негативные” ситуации. Это означает, что мы проверяем, как приложение реагирует, если пользователь делает что-то неправильно или пропускает какие-то шаги. Не все пользователи хорошо знакомы с приложением, и они могут совершать ошибки. Важно, чтобы приложение правильно обрабатывало такие ситуации.
4. Тестирование связано с охватом
Когда речь идет об “охвате”, это означает, что мы стараемся проверить как можно больше различных ситуаций и функций в приложении. Чем больше тестов мы выполняем, тем больше шансов улучшить качество продукта.
Во время тестирования мы стараемся проверить все возможные комбинации действий, которые пользователь может совершить. Мы также обращаем внимание на необычные комбинации, которые могут привести к проблемам. Мы создаем матрицу прослеживаемости требований, чтобы убедиться, что все требования к приложению будут проверены. Это может быть официальный документ или просто список требований.
Мы также проводим тесты на граничные условия и отрицательные случаи. Граничные условия – это экстремальные значения или ограничения, которые могут повлиять на работу приложения. Отрицательные тест-кейсы – это проверка того, как приложение обрабатывает ошибки или неправильные действия пользователей.
5. Тестирование – это поиск дефектов
Дефект описывается как отклонение фактического результата от требований. Это особенно важно при проверке приложения на соответствие требованиям. Даже при выполнении negative сценариев или проведении ad-hoc тестирования мы все равно находим дефекты.
О дефектах следует сообщать сразу же после их обнаружения c указанием всех соответствующих данных. Каждый исправленный дефект повышает качество продукта.
6. Тестирование – это простота
Нет смысла создавать приложение высокой сложности, которое не приносит пользы. Вместо этого следует предложить простой дизайн, которым сможет пользоваться даже новичок.
Предлагайте усовершенствования в системе. Вы можете предложить улучшить макет, разметку, названия кнопок и сообщений. Пользователи всегда предпочитают использовать менее сложную и простую в использовании и понимании систему. Чем проще, тем лучше.
7. Тестирование – это сотрудничество
Тестирование – это деятельность, которую нельзя выполнять в одиночку.
Оно всегда должно проводиться совместно с другими командами, такими как отдел требований, проектирования, разработки, процесса и т.д.
Представьте, что в процессе тестирования, вы обнаружили ошибку или дефект в приложении. В таком случае вы должны убедить другие команды, такие как команда разработки или команда по требованиям, в важности исправления этой ошибки. Но иногда возникают ситуации, когда другие команды не соглашаются с нами или не признают дефект как важный или необходимый для исправления.
В данном случае, если нам не удается убедить другую команду в исправлении дефекта, это означает, что мы не выполнили свою работу как надо. Мы должны оставаться настойчивыми и не принимать легкомысленные оправдания от других команд. Вместо этого, мы должны документировать дефект и привлечь заинтересованных лиц, таких как руководство проекта или заказчик, чтобы они рассмотрели ситуацию и приняли решение относительно исправления дефекта. Это гарантирует, что все дефекты будут правильно оценены и обрабатываться в соответствии с приоритетами проекта.
8. Тестирование связано с документацией
Документация играет важную роль в тестировании. Поэтому документируйте тестовые сценарии, тест-кейсы. Эти документы будут очень полезны в будущем для справки в случае, если кому-то придется проводить повторное тестирование.
Задокументируйте все дефекты любым способом, например, в Microsoft Excel или инструменте управления дефектами. Документируйте также тестовые данные, детали среды и т.д.
Некоторые будут спорить о том, сколько документации необходимо для тестирования. Однако, это зависит от конкретного проекта. Помните о вышеперечисленных пунктах в любом проекте, кроме Agile. Для Agile-проектов вы можете использовать другой подход к документированию. Но избегать документации не рекомендуется в любом случае.
9. Тестирование связано с управлением временем
Дефекты, обнаруженные на более поздних этапах цикла тестирования, влияют на затраты на проект и время. Cледовательно, важно выявлять критические дефекты как можно раньше, чтобы оставалось время и на их исправление.
Тестировщики всегда сталкиваются с проблемой управления временем. Мы должны заранее подготовить тестовые данные, настроить тестовую среду. Отслеживать дефекты, статус тест-кейса – все это происходит параллельно. Таким образом, управление временем становится действительно сложной задачей для нас.
10. Тестирование связано с настроем
Уверенно можно сказать, что настрой – неотъемлемая часть работы хорошего тестировщика. Вам необходимо иметь правильное отношение к своей работе, чтобы выполнять ее должным образом.
Заключение
В современном мире очень важно быть в курсе последних обновлений.
Все ваши усилия будут напрасными, если вы не строите свою работу на правильном подходе.
Многие считают, что тестирование – это монотонное и скучное занятие. Но это совершенно не так.
Определенно, на вашем пути будет очень много сложностей, например, с пониманием требований, настройкой тестовой среды, правильным планированием тестирования. Сложности также могут быть связаны с определением подходящего вида тестирования, тестовым покрытием.
Но важно, насколько успешно вы преодолеете эти трудности.
Помните, если вам нравится ваша работа, только тогда вы сможете выложиться на 100%.
Понравилось читать? Сообщите нам о своих мыслях в комментариях ниже.
Перевод статьи «What is Software Testing All About? (Read This 10 Point Summary Carefully)».