A small, accessible demo project showing how Robot Framework, RobotCode, Robocop and community libraries (REST, Browser, Database, RPA) can be combined into a simple test automation setup.
This repo is meant as a practical, small‑scale example of:
-
Accessible automation
Keyword‑driven tests that are readable by developers, testers, and domain experts. -
Community‑driven tools and libraries
Using open source tools maintained by the Robot Framework community:- RobotCode – VS Code extension for Robot Framework
- Robocop – linter for style and consistency
- robotframework-requests – REST API tests
- robotframework-browser – browser/UI tests
- robotframework-databaselibrary – database checks
- rpaframework – Windows Notepad interaction
.
├── resources/
│ ├── components/
│ │ ├── api.resource # Keywords for API tests
│ │ ├── browser.resource # Keywords for Browser/UI tests
│ │ ├── database.resource # Keywords for DB checks
│ │ └── notepad.resource # Keywords for RPA/Notepad
│ └── data/
│ └── domain/
│ ├── learningChuckAPI.resource # Domain keywords for API
│ ├── learningChuckDB.resource # Domain keywords for DB
│ ├── learningChuckNotepad.resource # Domain keywords for Notepad
│ └── learningIntegration.resource # Domain keywords for Integration
├── results/ # Test outputs (created by Robot)
├── suites/
│ ├── ChuckTechnicals.robot # Suite focused on technical checks
│ ├── NorrisComponents.robot # Component-level tests
│ └── NorrisIntegration.robot # Integration-level tests
├── .gitignore
├── readme.md
├── requirements.txt
├── robocop.toml # Robocop configuration
└── robot.toml # Robot Framework settings
- Python 3.10+
- A code editor (for example VS Code with the RobotCode extension)
- On Windows, if you want to run the Notepad/RPA part: the standard Notepad application
From the project root:
python -m venv .venv
# On Linux/macOS
source .venv/bin/activate
# On Windows
.venv\Scripts\activate
pip install -r requirements.txtRun the following command in your activated virtual environment:
rfbrowser installFrom the project root, run:
# Run all suites
robotcode -p random robot .
# Or run one suite at a time
robotcode -p dev robot suites/ChuckTechnicals.robot
robotcode -p science robot suites/NorrisComponents.robot
robotcode -p random robot suites/NorrisIntegration.robotThis project is heavily inspired by a technical demo created by Stavroula Ventoura which was first showcased at Athens Open‑Conf '25. It has been repurposed with her assistance and permission.