Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Architecture for test frameworks
Search
Sven Kroell
December 05, 2017
Programming
0
58
Architecture for test frameworks
Sven Kroell
December 05, 2017
Tweet
Share
More Decks by Sven Kroell
See All by Sven Kroell
QA/Developer Collaboration
thywen
0
41
Code quality for testing frameworks
thywen
0
75
Other Decks in Programming
See All in Programming
ThorVG Viewer In VS Code
nors
0
770
CSC307 Lecture 07
javiergs
PRO
0
550
Apache Iceberg V3 and migration to V3
tomtanaka
0
160
AIによる開発の民主化を支える コンテキスト管理のこれまでとこれから
mulyu
3
190
Honoを使ったリモートMCPサーバでAIツールとの連携を加速させる!
tosuri13
1
180
AtCoder Conference 2025
shindannin
0
1.1k
OCaml 5でモダンな並列プログラミングを Enjoyしよう!
haochenx
0
140
AgentCoreとHuman in the Loop
har1101
5
230
【卒業研究】会話ログ分析によるユーザーごとの関心に応じた話題提案手法
momok47
0
190
メルカリのリーダビリティチームが取り組む、AI時代のスケーラブルな品質文化
cloverrose
2
510
CSC307 Lecture 01
javiergs
PRO
0
690
インターン生でもAuth0で認証基盤刷新が出来るのか
taku271
0
190
Featured
See All Featured
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
57
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
820
Building the Perfect Custom Keyboard
takai
2
680
A Modern Web Designer's Workflow
chriscoyier
698
190k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
A Tale of Four Properties
chriscoyier
162
24k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
61
52k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Discover your Explorer Soul
emna__ayadi
2
1.1k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
180
We Have a Design System, Now What?
morganepeng
54
8k
Transcript
Architecture For test automation frameworks
Sven Kroell Testing Toolsmith 5 Years in Automation Working for
Novoda Mentoring new Testers Creating tailored solutions @craftingtester 2
End to End Integration Unit The pyramid 3
Why automate checks? Save time 4 Codebase grows Better risk
mitigation People grow tired
Record and play 5
Tape jam 6
Do it yourself 7
None
Time flows by 9 Maintenance hard Duplicated code Devs change
locators
Repairing on the fly 1 0 Checks get deactivated Hard
to understand Red builds Codebase grows
How to do it better? 1 1
Building a framework 1 2
➡ Separation of concerns ➡ Build a domain language ➡
Keeping the checks simple ➡ Reusable components Why a framework 1 3
What went wrong? 1 4 Locators Testdata Userflows Repetitions Magic
code Sleeps
None
Think in layers 1 6 Checks Framework Driver Application
➡ Orchestrate the checks ➡ No states ➡ KISS ➡
Using a DSL provided by the framework Checks (Testfiles) 1 7
Layers of the Framework 1 8 Checks Driver Repositories Workflows
Page Objects Data Generators Data Access Objects
➡ Hold the states ➡ Fetch data from api ➡
Trigger builder Repositories 1 9
How it could look like 2 0
➡ Centralised data generation ➡ Single point of change ➡
Checks don’t need to know data rules Why repositories? 2 1
➡ Simple DSL ➡ Reusable Flows ➡ Interact via page
objects Workflows 2 2
How it could look like 2 3
➡ Decouple flows from checks ➡ Checks get cleaner ➡
Using a DSL makes it easier for new joiners to get up to speed Why workflows? 2 4
➡ Holds information about one component of the page ➡
Write and Read from a certain elements Page Objects 2 5
How it could look like 2 6
➡ Hides complexity of the DOM from workflows ➡ Single
point of change for identifiers Why Page Objects? 2 7
Lets have a small demo 2 8
➡ Errors != Faults != Failures ➡ Plan your checks
➡ Work closely with your devs Remarks 2 9
➡ Creating checks is software development ➡ Clean code is
very important ➡ A good architecture helps while refactoring Final thoughts 3 0
Questions? 3 1 Thank you!