Junior
Кои методи за тестване знаеш?
sobes.tech AI
Отговор от AI
- Функционално тестване:
- Unit testing: Тестване на най-малките изолирани части от кода (функции, класове).
- Integration testing: Проверка на взаимодействието между различните модули или компоненти на системата.
- System testing: Тестване на цялата интегрирана система за съответствие с изискванията.
- Acceptance testing: Тестване на системата от крайни потребители или бизнес представители за потвърждение на съответствието им с техните нужди.
- Нефункционално тестване:
- Performance testing: Оценка на производителността на системата под натоварване.
- Load testing: Тестване на системата при очаквано натоварване.
- Stress testing: Тестване на системата извън очакваното натоварване за определяне на точката на отказ.
- Endurance (Soak) testing: Проверка на стабилността на системата при продължителна работа под натоварване.
- Security testing: Оценка на защитеността на системата срещу заплахи.
- Usability testing: Проверка на удобството за използване на системата от крайни потребители.
- Compatibility testing: Проверка на работата на системата в различни среди (браузъри, ОС, устройства).
- Reliability testing: Оценка на способността на системата да работи без грешки за определен период.
- Maintainability testing: Оценка на леснотата за извършване на промени в системата.
- Portability testing: Оценка на възможността за пренасяне на системата в друга среда.
- Performance testing: Оценка на производителността на системата под натоварване.
- Тестове за промени:
- Regression testing: Повторно тестване на преди това тествана функционалност след промени за откриване на нови дефекти.
- Re-testing (Confirmation testing): Повторно тестване на конкретен дефект след неговото отстраняване за потвърждение на отстраняването му.
- Структурно тестване (White-box testing): Тестване на вътрешната структура и логика на кода.
- Statement coverage: Покриване на всички оператори в кода.
- Branch coverage: Покриване на всички клонове на логиката (условия).
- Path coverage: Покриване на всички възможни пътища на изпълнение на кода.
- Тестове на черен кутия (Black-box testing): Тестване на функционалността без да се взема предвид вътрешната структура на кода.
- Boundary value analysis: Тестване на граничните стойности на входните данни.
- Equivalence partitioning: Разделяне на входните данни на еквивалентни класове.
- Decision table testing: Използване на таблици за решения за тестване на комбинации от условия и действия.
- State transition testing: Тестване на преходите между различните състояния на системата.
- Use case testing: Тестване на системата въз основа на потребителски сценарии.
- Експлораторско тестване (Exploratory testing): Паралелно проектиране, изпълнение и анализ на тестовете.
- Тестове, базирани на риск (Risk-based testing): Приоритизиране на тестовете въз основа на потенциалните рискове.