Professional Documents
Culture Documents
REALITY
REAL USERS, REAL DEVICES, REAL
TIME
Powered by Crowd & Cloud Technologies
2
Test Design
The Challenges
Legibility
Accelerates error
1 analysis, ensures broad
Structure common understanding
and thus promotes
Promotes logical structure, cooperation.
for example by precondition,
action and assurance. 2
3
Abstraction from the test Reusability
object
Reduces potential sources
of error, improves overall
4
Using declarative instead of maintainability and
imperative test case increases scalability.
descriptions shifts focus to
functional rather than
technical aspects.
3
Test Design
Tools in our stack
Legibility
• BDD with Cucumber
• Human-readable test specification thanks to Gherkin Syntax
• Involves the entire team, from tester to developer to PO
Reusability
• Step Definitions by Gherkin Syntax
• Flexibly combinable
Structure
• Logical structure according to Given - When - Then thanks to Gherkin template
• Supplementary explanations with the help of narratives
4
Test Automation
Test Automation at a glance
Test Design
●Legibility Test Development
●Structure
●Reusability
5
Test Development
The Challenges
Stability
Reusability
2
Reduces potential sources of
error, improves overall Best Practices
maintainability and increases
scalability. Prevents the use of bad
3 practices (such as static
waits), promotes good
practices such as the Page
Object Pattern.
6
Test Development
Tools in our stack
Reusability
• Selenium Browser Testing with Selenide
• Simplest test configuration
• User-friendly session and driver management
• Always updated framework methods
Stability
• Cross-browser proven framework methods
• Possibility to communicate directly with the backend
Best Practices
• Implicit, globally configurable timeouts before each operation
• Native page object integration
• Integrated error handling, screenshots and DOM dumps
7
Test Automation
Test Automation at a glance
8
Test Execution
The Challenges
Predictability
1
Event and time based
execution of E2E tests
Parameterizability
2
Execution of the same test
suite in different test Connecting data
environments and in different
browser operating system Execution of the E2E tests
combinations. 3 only after successful build
(including execution of the
unit tests) and deployment on
the test environment.
9
Test Execution
Tools in our stack
10
Test Automation
Test Automation at a glance
Test Execution
●Smoke tests after each build Test Evaluation
●Time-controlled long test runs
●Parameterization of builds
●Different test environments
Jenkins Pipeline
11
Test Evaluation
The Challenges Assessability
Freely determinable
Structurability evaluation and error
1
category of test run
Sensible grouping of test errors, automatic
results by product version, assignment for frequently
test environment and browser recurring errors.
operating system 2
combination.
3 Analysability
12
Test Evaluation
Tools in our stack
Example: 200 test cases from 10 feature groups of a web portal (horizontal in the matrix)
Test runs on all common desktop browsers (vertical)
• Win 10: IE11, Edge, Chrome, Firefox, Firefox ESR
• macOS: Safari, Chrome, Firefox, Firefox ESR
• Win 7: IE11 (strong OS dependency)
• = 10 Test environments/Browser
13
Test Evaluation
Tools in our stack
14
Test Automation
Test Automation at a glance
15
Live Demo
GitHub: https://github.com/Testbirds-GmbH/selenium-techstack
16
Contact
Felix Kuperjans
17