Test Automation: from zero to hero - TestCon Europe
Transcript of Test Automation: from zero to hero - TestCon Europe
![Page 1: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/1.jpg)
By Vaidas Mačiulis and Paulius Eidikas
Test Automation: from zero to hero
![Page 2: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/2.jpg)
![Page 3: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/3.jpg)
MAKE GREAT THINGS SEEK MASTERY EMBRACE TRANSPARENCY
TAKE OWNERSHIP DELIVER RESULTS HAVE FUN
![Page 4: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/4.jpg)
You probably need automation
![Page 5: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/5.jpg)
jQuery 2.1.4 has a security bug.
![Page 6: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/6.jpg)
You shall upgrade!
![Page 7: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/7.jpg)
Manual regression testing
![Page 8: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/8.jpg)
Automated regression testing
![Page 9: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/9.jpg)
Why you probably need automation?
![Page 10: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/10.jpg)
Why you probably
need automation?
1. Manual testing is boring
![Page 11: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/11.jpg)
How often do you release?
![Page 12: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/12.jpg)
Automated Tests Pipeline
![Page 13: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/13.jpg)
Ahh…beautiful
![Page 14: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/14.jpg)
Run for your lives
![Page 15: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/15.jpg)
Why you probably
need automation?
1. Manual testing is boring
2. Continuous integration
![Page 16: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/16.jpg)
Bug life cycle
![Page 17: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/17.jpg)
Bug life cycle
What’s this?
DeveloperUnittests
CodeReview
API test
Manualtesting
UI autotest
![Page 18: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/18.jpg)
Why you probably
need automation?
1. Manual testing is boring
2. Continuous integration
3. Support the last line of defence
![Page 19: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/19.jpg)
It’s fun
![Page 20: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/20.jpg)
Why you probably
need automation?
1. Manual testing is boring
2. Continuous integration
3. Support the last line of defence
4. It’s fun
![Page 21: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/21.jpg)
![Page 22: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/22.jpg)
Why you probably
need automation?
1. Manual testing is boring
2. Continuous integration
3. Support the last line of defence
4. It’s fun
5. Helps testers learn programming
![Page 23: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/23.jpg)
Test automation framework
![Page 24: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/24.jpg)
Project vision
• Build pages from custom components
• High reusability
• Fast development cycle
• All features are covered by
automated tests
![Page 25: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/25.jpg)
• Duplicated code
• Difficult maintainability
• Programming language was not
familiar to our developers
Legacy testing
framework
![Page 26: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/26.jpg)
Technology stack
+ +
![Page 27: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/27.jpg)
• Main building blocks
• Handles interaction
Components
![Page 28: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/28.jpg)
• Every component has
its representation for testing
• Reusable
• Easy interaction
Components
![Page 29: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/29.jpg)
• Country
• City
• Street
• House
• Door number
Component
context
![Page 30: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/30.jpg)
• Modal (City)
• Header (Street)
• Content (Street)
• Actions (Street)
• Button (House) label="Yes" (Door number)
• Button (House) label="No" (Door number)
• Joins components
• Allows them to remain generic
Component
context
![Page 31: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/31.jpg)
• Framework can be complex
• Writing tests should be easy
Writing tests
![Page 32: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/32.jpg)
Maintenance
![Page 33: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/33.jpg)
• Share programming knowledge
• Share testing knowledge
• Avoid human error
Code reviews
![Page 34: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/34.jpg)
• It's all about the trust
• Better response time
Continuous integration
- Green
![Page 35: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/35.jpg)
• Focus on unit under test
• Use navigation via URLs
• Avoid UI interaction for
setup/teardown
Decoupled tests
![Page 36: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/36.jpg)
Test automation during sprint is real
![Page 37: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/37.jpg)
“Definition of Done. Each scrum team has its own Definition of
Done or consistent acceptance criteria across all User
Stories. A Definition of Done drives the quality of work and is
used to assess when a User Story has been completed.”
![Page 38: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/38.jpg)
Definition of
Done
1. Code complete
2. Code reviews
3. Manual testing
4. Automation test coverage
![Page 39: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/39.jpg)
Myths of
auto - skeptics
1. You have to finish code before
automating
![Page 40: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/40.jpg)
Test driven development
![Page 41: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/41.jpg)
Myths of
auto - skeptics
1. You have to finish code before
automating
2. It’s already covered in unit tests
![Page 42: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/42.jpg)
Unit test passed: 100%
![Page 43: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/43.jpg)
Myths of
auto - skeptics
1. You have to finish code before
automating
2. It’s already covered in unit tests
3. We will deliver less in same time
![Page 44: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/44.jpg)
Let’s deliver more
![Page 45: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/45.jpg)
Test Automation:
From Zero To Hero
1. Convince your team that you need
automation
2. Choose tech stack that team is
already familiar with
3. Make sure framework is
maintainable from start on
4. Add test automation to definition of
done
![Page 46: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/46.jpg)
Have questions?
![Page 47: Test Automation: from zero to hero - TestCon Europe](https://reader034.fdocuments.net/reader034/viewer/2022042918/626a7a6c47248b22e2613d2a/html5/thumbnails/47.jpg)
Thank You.Vaidas Mačiulis, Senior Test Engineer
Paulius Eidikas, Senior Test Engineer