This repository is a demo case library for showing what an automation test repository can look like. It is meant for product demos, walkthroughs, import examples, and conversations about automated test organization.
It does not include a production application under test. Instead, it provides representative test files across three common automation formats:
- Python
pytest - Java JUnit 5
- Robot Framework
The scenarios cover authentication, account settings, checkout, shopping cart, and admin console behavior. The goal is to make the repository easy to browse and easy to use as realistic-looking demo data.
tests/
java/
AdminConsoleUiTest.java
AuthenticationUiTest.java
ShoppingCartUiTest.java
python/
test_account_settings.py
test_authentication_flows.py
test_checkout_journey.py
robot/
account_settings.robot
authentication.robot
checkout.robot
| Area | Format | File | Count |
|---|---|---|---|
| Authentication | Python | tests/python/test_authentication_flows.py |
8 |
| Account settings | Python | tests/python/test_account_settings.py |
7 |
| Checkout journey | Python | tests/python/test_checkout_journey.py |
8 |
| Authentication UI | Java | tests/java/AuthenticationUiTest.java |
5 |
| Admin console UI | Java | tests/java/AdminConsoleUiTest.java |
4 |
| Shopping cart UI | Java | tests/java/ShoppingCartUiTest.java |
5 |
| Authentication | Robot Framework | tests/robot/authentication.robot |
5 |
| Account settings | Robot Framework | tests/robot/account_settings.robot |
5 |
| Checkout | Robot Framework | tests/robot/checkout.robot |
5 |
Total: 52 demo automation cases.
- Sign in, invalid credentials, locked accounts, password reset, logout, session timeout, and remembered sessions
- Profile updates, email verification, notification preferences, language persistence, two-factor setup, API token masking, and account deletion confirmation
- Cart management, coupon validation, shipping totals, payment failure handling, and checkout confirmation
- Admin user search, suspension handling, role-change audit messages, and feature flag enablement
The Python examples are self-contained and can run with pytest. This is useful when a demo needs at least one executable suite.
python -m pip install pytest
pytest -q tests/pythonIf your local Python environment has incompatible global pytest plugins, disable plugin autoloading:
PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 pytest -q tests/pythonVerified locally:
23 passed
The Java files are JUnit 5-style test classes intended as demo inputs. They are useful for showing how Java automation cases may appear during import, parsing, classification, or reporting demos.
This repository does not currently include a Maven or Gradle project file, so a runner must be supplied by the consuming tool or added before executing them directly.
Required runtime dependency:
- JUnit Jupiter / JUnit 5
Example future Maven command, after adding a pom.xml:
mvn testThe Robot Framework files are written in readable BDD-style syntax and include tags such as smoke, regression, auth, account, checkout, security, and payment.
They are best treated as demo/import fixtures unless matching keyword implementations are added. To execute them directly, provide Robot Framework keyword libraries or resource files for steps such as Given Login Page Is Open and Then Dashboard Should Be Visible.
Example future command, after adding keyword implementations:
robot tests/robotREADME.mdwas previously empty.- There are no dependency manifests yet, such as
requirements.txt,pom.xml,build.gradle, or Robot resource files. - The Python tests are executable as-is and can support live demo validation.
- The Java and Robot tests are realistic demo/import fixtures, but need project configuration or keyword implementations before they can be executed directly.
- Add
requirements.txtwithpytestif Python execution should be reproducible. - Add
pom.xmlorbuild.gradleif the Java JUnit examples should run in CI. - Add Robot Framework resource files if the
.robotscenarios should become executable acceptance tests. - Add CI to run the Python tests and, later, the Java and Robot suites once their runners are configured.