QASmartTestLab
QASmartTestLab
Overzicht
QASmartTestLab is een Cucumber (JVM)-framework op Selenium 4 en JUnit 5. Cucumber voert scenario’s parallel uit met een dynamische strategie, en elke thread krijgt een eigen WebDriver via een ThreadLocal-factory, zodat scenario’s nooit een browser delen. Dezelfde suite draait op een lokale Chrome (drivers via WebDriverManager) of op een remote Selenium Grid of Selenoid, gekozen tijdens runtime met een systeemproperty of omgevingsvariabele. Page objects, step definitions, runners en supportklassen zijn gescheiden; tags bepalen wat er draait, en elke run schrijft HTML-, JSON- en JUnit XML-rapporten plus een samenvatting in de console. De feature-suites dekken UI-login en inkomende en uitgaande betaalberichten met XML-validatiefixtures.
Parallelle Scenario’s · Thread-Safe WebDriver
Lokale of Remote Grid/Selenoid-Runs
4 Rapportformaten per Run
Page Object Model · Runs op Tags
Uitdaging & Oplossing
De Uitdaging
Test automation teams worstelen vaak met framework complexiteit, slechte onderhoudbaarheid en gebrek aan standaardisatie tussen projecten. Veel frameworks veranderen in technische schuld, zijn moeilijk te begrijpen voor nieuwe teamleden en lastig op te schalen naarmate de applicatie groeit.
De Oplossing
QASmartTestLab gebouwd rond een paar heldere regels: page objects voor de UI, step definitions die alleen orkestreren, één WebDriver per thread, en configuratie tijdens runtime in plaats van in code. De suite wisselt met één property tussen een lokale browser en een remote Grid, voert scenario’s veilig parallel uit en selecteert met tags wat er draait.
Kernfunctionaliteiten
Betaalstroom-Features
Cucumber-suites voor UI-login en voor inkomende en uitgaande betaalberichten, met XML-validatiefixtures per scenario.
Runtime-Configuratie
Lokale Chrome of een remote Selenium Grid/Selenoid, gekozen met een systeemproperty of omgevingsvariabele; WebDriverManager regelt de drivers.
Clean Architecture
Page objects, step definitions, runners en supportklassen gescheiden, elk met één verantwoordelijkheid.
Parallelle Uitvoering
Cucumber voert scenario’s parallel uit (dynamische strategie) met een ThreadLocal WebDriver per thread, zodat scenario’s nooit een browser delen.
Galerij
Gebruikte Technologieën
Tags
Resultaten & Impact
HTML, JSON, JUnit XML en een samenvatting in de console bij elke run
Lokale Chrome of een remote Selenium Grid/Selenoid, te wisselen zonder codewijziging
Een thread-safe WebDriver laat Cucumber scenario’s gelijktijdig uitvoeren