π± Rolnopol - Application for learning and practicing test automation of GUI and API
π± Rolnopol - Introduction
[!TIP]
π‘ Choose your language:>
- π¬π§ English
- π΅π± Polski
A realistic farming management application designed for test automation practice. Features a GUI, REST API, intentional bugs, and real-world scenarios for practicing automation and testing techniques.
- π Express.js API with role-based access and rate limiting
- ποΈ JSON database for easy test data control
- π Intentional bugs & edge cases for debugging practice
- π§ͺ Complex workflows (financial, resource, authorization)
[!NOTE]
ποΈ Curious how it all fits together? See ARCHITECTURE.md for component, request-flow, auth, WebSocket, and Farm Defence diagrams (rendered with Mermaid).
Table of Contents
Quick Start
Requirements
Get Running in 3 Steps
git clone https://github.com/jaktestowac/rolnopol.git
cd rolnopol
npm i && npm run start
App is available at: http://localhost:3000
π‘ Startup Scripts: For convenience, usestart.bat(Windows),./start.ps1(PowerShell),./start.sh(Linux/macOS). See START_SCRIPTS.md for details.
Demo Credentials
For testing and demonstration purposes, the application includes several pre-configured demo users:
| Email | Password | | ---------------------------- | -------------- | | demo@example.com | demo123 | | test@example.com | brownPass123 | | john.doe@example.com | johndoe123 | | jane.smith@example.com | janesmith456 | | developer@example.com | dev123456 | | emptyuser@rolnopol.demo.pl | demoPass123 |
Note: These are demo credentials for local development and testing only. Passwords are stored in plain text for easier testing and account management.
Swagger UI
API documentation is available at: http://localhost:3000/api-docs
Deployment
Instructions how to deploy presented service to various free hosting sites.
- Deploy to Local (recommended)
- Deploy using Docker image
Deploy on Local
Requirements:
- node.js https://nodejs.org/ - installed in the system -
- git https://git-scm.com/ - installed in the system
First use
Steps:
- Open the project root directory in cmd/terminal
- Clone the repository using
git clone ...
- Run
npm i
- Run
npm run start
The application will be available at http://localhost:3000
Startup Scripts
For convenience, the project includes several scripts to start the application in different environments. These scripts automatically navigate to the project root and keep the terminal window open if the application stops or crashes.
- Windows (CMD): Run
start.bat - PowerShell: Run
.\start.ps1 - Linux/macOS (Bash): Run
./start.sh - Linux/macOS (Zsh): Run
./start.zsh
Update version
If You are using zip package
Steps:
- Download zipped repository
- Unzip and replace Your local instance of π± Rolnopol
- Run
npm iin root directory
- Run
npm run start
If You are using cloned repository
Steps:
- Open the project root directory in cmd/terminal
- Pull latest changes using
git pull - Run
npm i
- Run
npm run start
Update version if You have any changes (e.g. in database)
One possibility is to reset all Your local changes and pull new version.Using this method You will lose all Your local changes and data!
Steps:
- Open the project root directory in cmd/terminal
- Reset local changes and pull latest changes using:
git reset --hard HEAD
git pull
- Run
npm i
- Run
npm run start
Deploy to Render
Render - a popular Heroku-like PaaS with a free tier and a βDeploy to Renderβ button for one-click deploys.
- Create free account on: https://dashboard.render.com/register
- After successful registration hit the button:
- name your app
- hit
Apply - wait a while and click link to project
Rolnopol - click link to open app (under project name and repository)
- enjoy 750 free hours of service per month
Deploy using Docker image
This method can be used:
- locally
- in CI/CD services (GitHub Actions, GitLab CI etc.)
Prerequisites:
On local environment:
- latest Docker is installed
Running
Just run following command to get latest image:
docker run -p 3000:3000 -d jaktestowac/rolnopol
or specific version:
docker run -p 3000:3000 -d jaktestowac/rolnopol:1.0.24
Application should be running under http://localhost:3000/
Images are available at: π https://hub.docker.com/r/jaktestowac/rolnopol
Happy Automation!
We hope you'll have a great time testing and automating this application!
The challenges and features included are designed to help you grow your testing skills while having fun.
If you have any ideas for improvements or encounter any issues, please don't hesitate to open an issue on our GitHub repository.
Your feedback helps make π± Rolnopol better for everyone!
π’ Looking forward to your contributions and happy testing!
π Contact & Support
Feel free to reach out to us:
- π Website: jaktestowac.pl
- πΌ LinkedIn: jaktestowac.pl
- π¬ Discord: Polish Playwright Community
- π§ Support: Check our website for contact details
π Learning Resources
We have gathered a collection of resources to help you learn and master Playwright, both in Polish and English. Whether you're a beginner or an advanced user, these resources will help you enhance your skills and knowledge.
π΅π± Polish Resources
- JavaScript and TypeScript for Testers - Comprehensive (13h+) course on JavaScript and TypeScript for testers, with practical examples and exercises
- Professional Test Automation with Playwright - Comprehensive (100h+) course on Playwright, test automation, CI/CD and test architecture
- Back-end Test Automation - Comprehensive (45h+) course on Back-end Test Automation with Postman, Mocha, Chai, and Supertest
- Free Playwright Resources - Comprehensive and Free Polish learning materials
- Playwright Basics - YouTube series (Polish)
- Playwright Elements - Advanced concepts (Polish)
- Playwright MCP - MCP course (Polish)
- Discord Community - First Polish Playwright community!
- Playwright Info - first and only Polish Playwright blog
π¬π§ English Resources
- VS Code Extensions - Our free Playwright plugins
AI_Testers
Gain an edge by combining AI knowledge with the most popular tools in the IT market. We'll show you how to accelerate with AI and build a professional test automation framework. π
- AITesters - Main page about AI_Testers Program
- AITesters LinkedIn - Follow us on LinkedIn
Happy testing and automation! π
jaktestowac.pl Team β€οΈπ
PS. For more resources and updates, follow us on our website and GitHub.
Built with β€οΈπ for the Playwright and test automation community