How githubmaster07/unified-java-test-automation works
This repository is a Java test-automation framework for coordinating BDD scenarios across REST API, Selenium UI, and database validation. The main workflow starts with a Cucumber scenario, whose step definitions orchestrate booking setup through the API, UI interaction, and persistence checks. The README documents these capabilities; sampled sources confirm the database manager and shared configuration, but the API, UI, runner, and step-definition implementations were not provided, so their internal wiring is shown only where documented. The graph omits CI, build, and test-infrastructure details.
Main entry points: stepdefs Step definitions · runners Cucumber runner · BookingApiTests.java Booking API tests · LoginUiTests.java Login UI tests
Components 17
BDD orchestration
- Cucumber runner
src/test/java/runners - BDD scenarios
src/test/resources/features - Step definitions
src/test/java/stepdefs
API testing
- Booking API tests
src/test/java/api/BookingApiTests.java - Booking data builder
src/main/java/builders/BookingDataBuilder.java
UI testing
- Login UI tests
src/test/java/ui/LoginUiTests.java - Login page object
src/test/java/pages/LoginPage.java
Data integrity
- Booking DB tests
src/test/java/db/BookingDBTests.java - DB manager
src/main/java/core/DBManager.java
Framework core
- Driver factory
src/main/java/core/DriverFactory.java - Config manager
src/main/java/core/ConfigManager.java - Environment config reader
src/main/java/core/ConfigReader.java - Environment properties
src/test/resources/config/environment.properties
Other components
- Test author
- Booking system
- Browser
- H2 database
Connections 17
- Test author → Cucumber runner: starts tests
- Cucumber runner → BDD scenarios: loads scenarios
- Cucumber runner → Step definitions: binds steps
- Step definitions → Booking API tests: orchestrates API
- Step definitions → Login UI tests: orchestrates UI
- Step definitions → Booking DB tests: orchestrates checks
- Booking API tests → Booking data builder: builds payload
- Booking API tests → Booking system: creates booking
- Login UI tests → Login page object: uses page
- Login UI tests → Driver factory: sets up browser
- Login page object → Browser: interacts with
- Booking system → H2 database: persists booking
- Booking DB tests → DB manager: queries records
- DB manager → H2 database: reads and writes
- Driver factory → Config manager: reads settings
- Config manager → Environment properties: loads properties
- Environment config reader → Environment properties: loads properties