От архитектуры приложения до приемочных...
DESCRIPTION
Презентация доклада Александра Реминного на конференции SQADays-14, Львов 8-9 ноября 2013TRANSCRIPT
![Page 1: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/1.jpg)
QUALITY
ATTR
IBUTE
S
TESTI
NG
FR
OM
AR
CH
I TE
CT
UR
E T
O T
ES
T A
CC
EP
TA
NC
E
OL
EK
SA
ND
R R
EM
I NN
YI
![Page 2: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/2.jpg)
8 years in IT
Solutions Architect
Automation Expert (Consultant, Trainer)
PhD in IT (automation testing)
WHO IS IT?
![Page 3: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/3.jpg)
TESTI
NG ARCHIT
ECTURE
WT
F ?
![Page 4: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/4.jpg)
WHAT IS SOFTWARE ARCHITECTURE?
![Page 5: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/5.jpg)
IT STARTS FROM ONE GEEKY GUY…
![Page 6: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/6.jpg)
THEN IT MIGHT FINISH UP AS FOLLOWING…
![Page 7: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/7.jpg)
WHAT IS SOFTWARE ARCHITECTURE?
SO,
![Page 8: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/8.jpg)
WHAT FORMS SOFTWARE ARCHITECTURE?
![Page 9: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/9.jpg)
BUSINESS
![Page 10: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/10.jpg)
USERS
![Page 11: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/11.jpg)
SYSTEM
![Page 12: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/12.jpg)
WHAT CAN BE TESTED HERE?
![Page 13: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/13.jpg)
THIS???
![Page 14: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/14.jpg)
GO SMART
DE
F I NI N
G Q
UA
L I TI E
S
![Page 15: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/15.jpg)
SEI
THEY LIKE NON FUNCTIONAL REQUIREMENTS
![Page 16: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/16.jpg)
THEY CALL THEM – QUALITY ATTRIBUTES
Category Quality attributeDesign Qualities Conceptual Integrity
MaintainabilityReusability
Run-time Qualities Availability
Interoperability
ManageabilityPerformance
ReliabilityScalabilitySecurity
System Qualities SupportabilityTestability
User Qualities Usability
![Page 17: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/17.jpg)
WHAT IS QUALITY ATTRIBUTE?
ABILITY
![Page 18: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/18.jpg)
WHAT QUALITY ATTRIBUTES YOU SEE?
![Page 19: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/19.jpg)
LET’
S DO T
HE
SYSTE
MATIC
APP
ROACH
T AK
I NG
IT
AL L T
OG
ET
HE
R
![Page 20: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/20.jpg)
QUALITY ATTRIBUTE WORKSHOP
![Page 21: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/21.jpg)
Specific (why/what/how)
Measurable
Achievable
Result-focused
Time-bound
S.M.A.R.T.
![Page 22: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/22.jpg)
ARCHITECTURE SCENARIOS – SAMPLE UTILITY TREE
![Page 23: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/23.jpg)
ACCEPTANCE: A SOFTWARE ERROR OCCURS AT HIGH VEHICLE SPEED. REBOOT WITHIN 50 MSEC.
Source
• System
Stimulus
• Software error
Artifact
• System
Env
• High vehicle speed
Response
• Reboot occursResponse Measure
• Time to reboot up to 50 msec.
![Page 24: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/24.jpg)
EXPLAINING ACCEPTANCE: GHERKIN
Given
Environment• High vehicle
speedArtifact• System
As
Source• System
When
Stimulus• Software error
Then
Response• Reboot occursResponse Measure• Time to reboot
up to 50 msec.
![Page 25: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/25.jpg)
IMPLEMENTATION
Gherkin stubs
Best practices
Base classes reusage
Implementation monitoring
….
![Page 26: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/26.jpg)
TRACEABILITY: ACCEPTANCE TREE
1. Implementation directly linked to Quality attribute
2. Quality attribute linked to business driver
3. Priority of the scenario shows might be a start point for its automation
![Page 27: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/27.jpg)
Project specificsDisk level data encryption system
Goal: form acceptance for the system
Support large number of OS
Test in the cloud
Test definitionsNone
TechnologyAmazon + LAMP
ResourcesSenior part time and junior full time developer
REAL USE CASE
![Page 28: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/28.jpg)
Acceptance test suite definition (~30 tests)
Mini-framework implementation
Jenkins integration
Project was DECLINED to be released because of NOT passing the automation tests
RESULT
![Page 29: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/29.jpg)
GOT IT
?
L ET
’ S P
RA
CT
I CE
!
![Page 30: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/30.jpg)
OUR SCHEMA…
Source
Stimulus
Artifact
Env
ResponseResponse Measure
Given
EnvironmentArtifact
As
SourceWhen
Stimulus
Then
ResponseResponse Measure
Specific (why/what/how)MeasurableAchievableResult-focusedTime-bound
![Page 31: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/31.jpg)
RECAP: PROCESS DEFINITION
• Prioritize• Build timeline• Implement
• Break scenario into steps
• Define steps in QC language
• Generate test stubs
• Define Business Goals
• Gather Quality Attributes
• Generate Scenarios
Architecture
Form Acceptanc
e
Test solution
Trace and update
![Page 32: От архитектуры приложения до приемочных автоматических тестов, или тестирование нефункциональных](https://reader033.vdocument.in/reader033/viewer/2022061210/54907aecb4795942548b4598/html5/thumbnails/32.jpg)
QUESTIONS?