Automated testing framework built with Java, Selenium WebDriver, Cucumber, and Maven, designed to validate the functionality of the BlankFactor website through maintainable and scalable practices.
blankfactor-automation/
βββ src/
β βββ main/
β β βββ java/
β β β βββ pages/ # Page Object classes (HomePage, ContactPage, etc.)
β β β βββ utils/ # Shared utilities (DriverFactory, ConfigReader, DataStore)
β βββ test/
β βββ java/
β β βββ hooks/ # Test lifecycle hooks (Before, After)
β β βββ runners/ # Cucumber test runners
β β βββ stepdefinitions/ # Step definitions for Gherkin scenarios
β βββ resources/
β βββ features/ # Gherkin .feature files
β βββ config.properties # Environment configuration
- Java 17+
- Maven
- Selenium WebDriver 4+
- Cucumber 7+
- WebDriverManager
- JUnit 4
- SLF4J (Logging)
- (Optional: Allure / ExtentReports for reporting)
- Clone the repository:
git clone https://github.com/fabdel123/blankFactorTest.git
cd blankFactorTest- Run tests with Maven:
mvn clean testAll environment-specific values are stored in:
src/test/resources/config.properties
- Accept cookies
- Navigate to Industries > Retirement and Wealth
- Scroll and capture the text of the third tile in the "Powering Innovation" section
- Click on "Let's Get Started" and validate navigation to the Contact page
- BlankFactor page, get the page URL
- BlankFactor page, verify the page URL is correct "https://blankfactor.com/contact/"
- Page Object Model (POM)
- Separation of concerns
- Explicit waits over hardcoded sleeps
- Assert-based validations
- Centralized WebDriver management
- Logging with SLF4J
- Maintainable naming conventions (camelCase)
- CI integration (GitHub Actions)
- Reporting (Allure or ExtentReports)
- Cross-browser testing support
- Docker-based test execution
FabiΓ‘n De La Rosa
QA Automation Engineer