В жизни происходят перемены... Все время происходят. По разным на то причинам, мотивациям или обстоятельствам тестировщики меняют свое привычное место работы. Кем-то движет желание развиваться и совершенствовать навыки, кто-то просто ищет повышение ЗП - в общем причины разные.
Когда бы вы еще переворошили весь свой багаж знаний, если не перед грядущим собеседованием. Знание вещь такая - что часто не применяется, то быстро забывается. Стихами заговорил... В поисках нового места работы Я решил повторить базовые знания о тестировании, чтобы не ударить в грязь лицом. И заодно поделиться своим кратким конспектом: "Тестирование. Типы тестирования".
Что такое тестирование?
Тестирование (кратко для общего понимания) - процесс выполнения программы с целью найти ошибки.
Более основательное объяснение понятие тестирования на
хабре.
Основные принципы тестирования
Принцип #1: Тестирование показывает наличие дефектов, а не их отсутствие.
Принцип #2: Всеобъемлющие тестирование невозможно.
Принцип #3: Начинаем тестировать как можно раньше.
Принцип #4: "Пестицидный парадокс" - ошибки подстраиваются под существующие тесты, поэтому тесты нужно периодически обновлять/менять.
Принцип #5: Тест ситуационно зависим - две различные системы не должны тестироваться одинаковым способом.
Принцип #6: Отсутствие обнаруженных сбоев еще не значит, что система работает исправно.
Типы тестирования
- Тестируемость (Testability testing) - анализ требований проекта на соответствие результатам.
|
Testability: входные и выходные параметры |
- Юнит (Unit testing) - проверить, чтобы отдельные части кода работали верно. Цель изолировать отдельные части программы и показать, что они исправно работают отдельно друг от друга.
|
Юнит тестирование: входные и выходные параметры |
- Интеграционное (Integrational testing) - комбинируем индивидуальные модули и тестируем, как группу. Для нахождения дефектов при взаимодействии модулей между собой.
|
Интеграционное тестирование: входные и выходные параметры |
-
Дымное тестирование (Smoke testing) -
быстрое и грубое тестирование кода после внесение в него поправок, чтобы проверить базовую работоспособность.
|
Smoke testing:
входные и выходные параметры |
- Функциональное (Functional testing) - проверка функциональности приложения для обеспечения бизнес логики согласно требованиям спецификации.
|
Functional testing:
входные и выходные параметры |
В продолжении этого поста я добавлю вторую часть моего конспекта, где расскажу о: GUI testing, Usability testing, Regression testing, Performance testing, Load testing, Stress testing, Acceptance testing и Alpha and Beta testing. А также вы наглядно узнаете ответственных за типы тестирования (программист, пользователь или тестировщик).
Учитесь, развивайтесь, не стойте на месте и успехов.