Тестирование программного обеспечения. Базовый курс. 3-е издание



Pdf көрінісі
бет85/307
Дата03.07.2023
өлшемі5,03 Mb.
#179304
1   ...   81   82   83   84   85   86   87   88   ...   307
Байланысты:
Software Testing - Base Course (Svyatoslav Kulikov) - 3rd edition - RU

 
Стр: 71/301 
 
Рисунок 2.3.b — Подробная классификация тестирования (русскоязычный 
вариант) 


Подробная классификация тестирования
Тестирование программного обеспечения. Базовый курс. 
© EPAM Systems, 2015–2023
 
Стр: 72/301 
Рисунок 2.3.c — Подробная классификация тестирования (англоязычный вариант) 
Static testing
Dynamic testing
By code execution
White box 
method
By access to application code and architecture
Black box 
method
Gray box
method
Unit testing
Integration 
testing
By specification level
(by testing level)
System testing
Web app 
testing
Mobile app 
testing
By application nature
Desktop app 
testing
...
By architecture tier
Presentation tier 
testing
Business-logic 
tier testing
Data tier testing
By formalization level
Test case based
Exploratory
Ad hoc
Manual
Automated
(+ automatic)
By automation level
Alpha testing
Beta testing
By end users participation
By functions under test importance (decreasingly)
(by functional testing level)
Smoke testing
Critical path 
testing
Extended testing
By aims and goals
Regression testing
Re-testing
Acceptance testing
Positive testing
Negative testing
Functional testing
Nonfunctional testing
Installation testing
Performance testing
Load testing
(Capacity testing)
Scalability testing
Volume testing
Stress testing
Reliability testing
Accessibility testing
Interface testing
Security testing
Internationalization testing
Localization testing
Compatibility testing
Data quality testing and 
Database integrity testing
By techniques and approaches
By chronology
Based on tester’s experience, scenarios, 
checklists
Exploratory
Ad hoc
By input data selection techniques
Equivalence partitioning
Boundary value analysis
Domain testing
Pairwise testing
By code
Control flow testing
Data flow testing
State transition testing
By error source (knowledge)
Error guessing
Mutation testing
By operational environment
Operational testing
Decision table testing
By application behavior (models)
Specification-based testing
Model-based testing
State transition testing
Positive 
(simple)
Negative 
(simple)
Positive testing
Negative testing
Positive 
(complex)
Negative 
(complex)
Smoke testing
Critical path 
testing
Extended testing
Typical scenario 1
Typical scenario 2
Unit testing
Integration 
testing
System testing
Typical scenario 3
Software testing classification
General chronology
General typical scenarios
Orthogonal array testing
Comparison testing
Error seeding
Heuristic evaluation
Use case testing
Hybrid
testing
Qualification testing
Exhaustive testing
Resource utilization testing
By intrusion to application work process
Intrusive testing
Nonintrusive testing
Code review
By code structures
Statement 
testing
Decision testing
Condition testing
Multiple 
condition testing
Parallel testing
Configuration 
testing
Cross-browser 
testing
Gamma testing
Alpha testing
Beta testing
Gamma testing
Acceptance testing
Operational testing
Branch testing
Modified 
condition 
decision testing
Path testing
Usability testing
Recoverability testing
Failover testing
Random testing
Development testing
A / B testing
Concurrency testing
By component hierarchy
Bottom-up 
testing
Top-down 
testing
Hybrid
testing
By automation 
techniques
Data-driven 
testing
Keyword-driven 
testing
By attention to requirements and requirements’ components
Requirements 
testing
Functional 
components testing
Nonfunctional 
components testing
By ways of dealing with 
application
Behavior-driven 
testing
Operational testing


Подробная классификация тестирования
Тестирование программного обеспечения. Базовый курс. 
© EPAM Systems, 2015–2023
 
Стр: 73/301 
2.3.2.2. 
Классификация по запуску кода на исполнение 
Далеко не всякое тестирование предполагает взаимодействие с работаю-
щим приложением. Потому в рамках данной классификации выделяют: 

Статическое тестирование
(static testing
117

— тестирование без запуска 
кода на исполнение. В рамках этого подхода тестированию могут подвер-
гаться: 
o
Документы (требования, тест-кейсы, описания архитектуры приложе-
ния, схемы баз данных и т.д.). 
o
Графические прототипы (например, эскизы пользовательского интер-
фейса). 
o
Код приложения (что часто выполняется самими программистами в 
рамках аудита кода (code review
118
)
, являющегося специфической ва-
риацией взаимного просмотра
{51}
 
в применении к исходному коду). Код 
приложения также можно проверять с использованием техник тести-
рования на основе структур кода
{97}

o
Параметры (настройки) среды исполнения приложения. 
o
Подготовленные тестовые данные. 

Динамическое тестирование
(dynamic testing
119

— тестирование с запуском 
кода на исполнение. Запускаться на исполнение может как код всего прило-
жения целиком (системное тестирование
{78}
), так и код нескольких взаимосвя-
занных частей (интеграционное тестирование
{77}
), отдельных частей (модуль-
ное или компонентное тестирование
{77}
) и даже отдельные участки кода. Ос-
новная идея этого вида тестирования состоит в том, что проверяется реаль-
ное поведение (части) приложения. 
2.3.2.3. 
Классификация по доступу к коду и архитектуре приложения 

Метод белого ящика
(white box testing
120
, open box testing, clear box testing, 
glass box testing) 
— у тестировщика есть доступ к внутренней структуре и коду 
приложения, а также есть достаточно знаний для понимания увиденного. Вы-
деляют даже сопутствующую тестированию по методу белого ящика гло-
бальную технику — тестирование на основе дизайна (design-based testing
121
). 
Для более глубокого изучения сути метода белого ящика рекомендуется 
ознакомиться с техниками исследования потока управления
{96}
 
или потока 
данных
{96}

использования диаграмм состояний
{97}

Некоторые авторы склонны 
жёстко связывать этот метод со статическим тестированием, но ничто не ме-
шает тестировщику запустить код на выполнение и при этом периодически 
обращаться к самому коду (а модульное тестирование
{77}
 
и вовсе предпола-
гает запуск кода на исполнение и при этом работу именно с кодом, а не с 
«приложением целиком»). 
117
Static testing.
Testing of a software development artifact, e.g., requirements, design or code, without execution of these artifacts, 
e.g., reviews or static analysis. [ISTQB Glossary] 
118
Jason Cohen, 
«Best Kept Secrets of Peer Code Review (Modern Approach. Practical Advice.)». Официально распространяе-
мую электронную версию книги можно взять здесь: 
https://static1.smartbear.co/smartbear/media/pdfs/best-kept-secrets-of-
peer-code-review_redirected.pdf
 
119


Достарыңызбен бөлісу:
1   ...   81   82   83   84   85   86   87   88   ...   307




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет