Valibot is an intelligent test automation bot that leverages generative AI prompts to execute test cases from JIRA, integrating with Google Sheets for test plans and using Playwright for web portal testing. The framework is designed to be extensible, supporting both web application testing and embedded systems validation through RobotFramework integration.
- 🤖 AI-powered test execution through generative prompts
- 📊 Automated test case extraction from JIRA and Google Sheets
- 🎭 Web application testing using Playwright
- 🔌 Embedded system testing support via RobotFramework
- 🔄 CI/CD integration ready
- 📝 Detailed test execution reporting
- 🗄️ S3 storage integration for test artifacts
├── engine.py # Core test execution engine ├── config.json # Configuration settings ├── valibot.spec # PyInstaller specification ├── README.md # This file ├── LICENSE # License information ├── requirements.txt # Dependencies ├── setup.py # Installation script ├── valibot # Main package directory │ ├── init.py # Package initialization │ ├── util.py # Utility functions │ ├── mail_process.py # Email processing │ ├── test_execution.py # Test execution │ ├── engine.py # Core test execution engine │ ├── jira_process.py # JIRA integration │ ├── google_auth.py # Google authentication │ ├── google_process.py # Google Sheets integration │ ├── aws_process.py # AWS S3 storage handling
- Python 3.9+
- Poetry for dependency management
- JIRA account with API access
- Google Cloud Platform account with Sheets API enabled
- AWS account with S3 access (optional)
- Clone the repository:
git clone https://github.com/yourusername/valibot.git
cd valibot
- Install dependencies using Poetry:
poetry install
- Configure credentials:
- Create a
config.json
file with your credentials:
{
"jira_server": "https://your-jira-instance.com",
"jira_user": "your-email@domain.com",
"jira_api_key": "your-jira-api-key",
"api_key": "your-google-api-key"
}
valibot -p "your test prompt here"
-p, --prompt
: Specify the test prompt-f, --file
: Provide prompt from a file-d, --debug
: Enable debug logging-t, --template
: Generate prompt template
- Create a test case in JIRA with steps
- Attach Google Sheet test plan (optional)
- Run Valibot with the test prompt:
valibot -p "execute test XSP-123"
-
JIRA Integration
- Fetches test case details from JIRA
- Extracts attached Google Sheet test plans
- Parses test steps and requirements
-
Test Plan Processing
- Reads Google Sheet test plans
- Maps JIRA IDs to test steps
- Extracts test data and parameters
-
Test Execution
- Launches Playwright for web testing
- Executes test steps sequentially
- Records test results and screenshots
- Uploads artifacts to S3
-
Reporting
- Generates detailed test reports
- Updates JIRA with results
- Sends email notifications (optional)
For embedded systems testing (DUTs, firmware, semiconductor boards):
- Configure RobotFramework test suites
- Set up communication with remote test servers
- Define test steps in JIRA/Google Sheets
- Execute tests through Valibot
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
For support, please:
- Check the documentation
- Open an issue on GitHub
- Contact the development team
- Playwright for web automation
- RobotFramework for embedded testing
- Google Cloud Platform
- AWS S3
- JIRA REST API