How sitanshupt5/seleniumbddjava works
SeleniumBDDJava is a reusable, YAML-driven Selenium/Cucumber UI automation framework. Its principal workflow runs application feature scenarios through shared step definitions, loads scenario data and page metadata, performs synchronized browser actions, then verifies outcomes and captures failure artifacts. The graph reflects the README’s documented capabilities; several implementation modules are represented from the tree and README because their source was not sampled, so uncertain internal wiring is omitted.
Main entry points: CommonHooks.java Scenario Hooks · UiActions.java UI Actions · features Feature Scenarios · DataRegistry.java Data Registry
Components 21
Scenario Definition
- Cucumber Runner
application/src/main/java/com/automation/ui/application/Runner.java - Feature Scenarios
application/src/main/resources/features
Automation Engine
- Scenario Hooks
commons/src/main/java/com/automation/ui/commons/stepdefinitions/CommonHooks.java - Given Steps
commons/src/main/java/com/automation/ui/commons/stepdefinitions/CommonGivenTestSteps.java - When Steps
commons/src/main/java/com/automation/ui/commons/stepdefinitions/CommonWhenTestSteps.java - Then Steps
commons/src/main/java/com/automation/ui/commons/stepdefinitions/CommonThenTestSteps.java - Test Context
commons/src/main/java/com/automation/ui/commons/types/TestContext.java - Data Registry
commons/src/main/java/com/automation/ui/commons/utilities/DataRegistry.java - Locator Registry
commons/src/main/java/com/automation/ui/commons/utilities/LocatorRegistry.java - UI Actions
commons/src/main/java/com/automation/ui/commons/utilities/UiActions.java - Wait Factory
commons/src/main/java/com/automation/ui/commons/utilities/WaitFactory.java - Wait Profiles
commons/src/main/java/com/automation/ui/commons/enums/WaitProfile.java - Runtime Configuration
configuration/config.ini
YAML Metadata
- Test Datasets
application/src/main/resources/data - Page Definitions
application/src/main/resources/pages
Browser Runtime
- Browser
- Application Under Test
Run Artifacts
- Allure Helpers
commons/src/main/java/com/automation/ui/commons/utilities/AllureHelpers.java - Framework Logging
commons/src/main/java/com/automation/ui/commons/utilities/CustomLogger.java - Run Artifacts
Other components
- Test Author
Connections 32
- Test Author → Feature Scenarios: defines scenarios
- Cucumber Runner → Feature Scenarios: runs
- Cucumber Runner → Scenario Hooks: starts scenarios
- Feature Scenarios → Given Steps: matches steps
- Feature Scenarios → When Steps: matches steps
- Feature Scenarios → Then Steps: matches steps
- Scenario Hooks → Test Context: initializes
- Scenario Hooks → Data Registry: loads data
- Scenario Hooks → Browser: starts driver
- Scenario Hooks → Allure Helpers: writes environment
- Scenario Hooks → Run Artifacts: saves screenshots
- Given Steps → Test Context: reads state
- Given Steps → Data Registry: selects dataset
- Given Steps → UI Actions: opens pages
- When Steps → Test Context: reads state
- When Steps → Data Registry: maps fields
- When Steps → UI Actions: performs actions
- Then Steps → Test Context: reads state
- Then Steps → UI Actions: checks pages
- Data Registry → Test Datasets: parses datasets
- Data Registry → UI Actions: populates fields
- UI Actions → Locator Registry: resolves locators
- UI Actions → Wait Factory: requests waits
- UI Actions → Browser: drives
- Locator Registry → Page Definitions: loads metadata
- Wait Factory → Wait Profiles: uses profiles
- Wait Factory → Runtime Configuration: reads timing
- Browser → Application Under Test: interacts with
- Scenario Hooks → Runtime Configuration: reads settings
- Scenario Hooks → Framework Logging: records events
- UI Actions → Framework Logging: records actions
- Allure Helpers → Run Artifacts: writes report data