AI-Powered Test Agent for Test Case Generation and Automation using RAG & GenAI
Project description
TestTeller Agent
TestTeller is the AI-powered Test agent that transforms your documentation into comprehensive test suites and executable automation code. Powered by a dual-feedback RAG architecture with support for multiple GenAI/LLMs (Google Gemini, OpenAI, Anthropic Claude, Local Llama), TestTeller analyzes your requirements, designs, and existing code to generate strategic test cases and automate them across multiple programming languages and supported testing frameworks.
Why TestTeller?
TestTeller transforms documentation and code into comprehensive test strategies and executable automation. Unlike traditional testing tools, TestTeller uses dual-feedback RAG architecture to understand your requirements and generate intelligent test scenarios.
Test Types Generated
- End-to-End (E2E) Tests: Complete user journeys across frontend, middleware, and backend services
- Integration Tests: Component integration (FE-BE, service-to-service, event-driven) and contract validation
- Technical Tests: Performance, security, resilience testing with infrastructure focus
- Mocked System Tests: Isolated component testing with mocked dependencies
Critical Features
- Dual-Feedback RAG Enhancement: Self-improving system that learns from generation cycles and stores high-quality outputs
- Multi-Provider LLM Support: Works with Google Gemini, OpenAI, Anthropic Claude, and local Llama/Ollama
- Universal Document Intelligence: Advanced parsing for PDFs, DOCX, XLSX, MD, TXT with context understanding
- Code Repository Analysis: Ingests and analyzes code from GitHub repos or local folders.
Supported Languages & Frameworks
Test Generation: All test types with tabular summaries and detailed specifications
Automation: Python (pytest, unittest), JavaScript/TypeScript (Jest, Mocha, Cypress, Playwright), Java (JUnit, TestNG), and more
Real-world workflow: Ingest project (PRDs/Contracts/Design/Schema etc.) documentation & project code → Generate strategic test cases covering authentication, error handling, and edge cases → Create executable Selenium/Playwright automation with proper setup and assertions → Commit your code.
Key Features
- 🤖 Generator Agent: Virtual Test architect with dual-feedback RAG enhancement - analyzes docs and generates strategic test cases with intelligent categorization (E2E, integration, security, edge cases)
- ⚡ Automator Agent: Multi-language code generation across Python, JavaScript, TypeScript, Java with 20+ framework support (pytest, Jest, JUnit, Playwright, Cypress, Cucumber, etc.)
- 🔧 Multi-Provider GenAI/LLM: Choose your AI provider - Google Gemini, OpenAI, Anthropic Claude, or run completely local with Llama/Ollama
- 📄 Universal Document Intelligence: Advanced RAG ingestion for PDFs, DOCX, XLSX, MD, TXT - understands context and generates appropriate test focus
- 🔄 Self-Learning System: Dual-feedback architecture gets smarter with each use - stores high-quality outputs and learns from automation success patterns
→ View Detailed Features | Technical Architecture
Quick Start
Prerequisites
- Python 3.11+
- API key for at least one LLM provider:
- Google Gemini (recommended)
- OpenAI
- Anthropic Claude
- Ollama (local or within accessible environment)
Installation
Option 1: PyPI Installation
# Install from PyPI
pip install testteller
Option 2: Docker Installation
Quick Testing (Docker Hub Image):
# Pull and run from Docker Hub for quick testing
docker pull iavipro/testteller:latest
# Run single commands
docker run -it \
-e GOOGLE_API_KEY=your_api_key \
-v $(pwd)/docs:/app/docs \
-v $(pwd)/output:/app/output \
iavipro/testteller:latest testteller --help
# Example: Generate test cases
docker run -it \
-e GOOGLE_API_KEY=your_api_key \
-v $(pwd):/app/workspace \
iavipro/testteller:latest testteller generate "API tests" --output-file /app/workspace/tests.pdf --collection-name my_collection
Full Development Setup (Docker Compose):
# Clone repository for complete setup with ChromaDB
git clone https://github.com/iAviPro/testteller-agent.git
cd testteller-agent
# Setup environment variables
cp .env.example .env
# Edit .env file and add your API keys (GOOGLE_API_KEY, OPENAI_API_KEY, CLAUDE_API_KEY)
# Start all services (TestTeller + ChromaDB)
docker-compose up -d
# Configure and use
docker-compose exec app testteller configure
docker-compose exec app testteller ingest-docs /path/to/document.pdf --collection-name project
docker-compose exec app testteller generate "API integration tests" --collection-name project
# Stop services
docker-compose down
Option 3: From Source
# Install from source
git clone https://github.com/iAviPro/testteller-agent.git
cd testteller-agent
pip install -e .
Basic Usage - Get Started in 2 Minutes
# 1. Configure your LLM provider (interactive wizard)
testteller configure
# 2. Ingest your documentation (supports PDF, DOCX, XLSX, MD, TXT)
testteller ingest-docs requirements.pdf --collection-name my_project
# 3. Ingest code from repository or local folder
testteller ingest-code https://github.com/user/repo --collection-name my_project
# OR: testteller ingest-code ./src --collection-name my_project
# 4. Generate strategic test cases with RAG context
testteller generate "Create comprehensive API integration tests" --collection-name my_project --output-file tests.pdf
# 5. Generate executable automation code
testteller automate tests.pdf --language python --framework pytest --output-dir ./tests
Enhanced Examples:
# E2E Testing Workflow
testteller ingest-docs user_stories.pdf --collection-name webapp
testteller ingest-code ./frontend --collection-name webapp
testteller generate "E2E user registration and checkout flow" --collection-name webapp
testteller automate output.pdf --language javascript --framework cypress
# API Testing with Security Focus
testteller ingest-docs api_spec.pdf --collection-name api
testteller generate "API security and integration tests" --collection-name api --output-format pdf
testteller automate tests.pdf --language python --framework pytest
# Microservices Testing
testteller ingest-code ./services --collection-name microservices
testteller generate "Inter-service communication and resilience tests" --collection-name microservices
testteller automate output.pdf --language java --framework junit
What happens? TestTeller's dual-feedback RAG analyzes your ingested docs and code, generates strategic test cases using structured templates (E2E, Integration, Technical, Mocked), then creates production-ready automation with proper setup, data management, and CI/CD integration.
Try TestTeller Now
No API Keys? No problem - use local Llama:
# Install Ollama (macOS/Linux)
curl -fsSL https://ollama.ai/install.sh | sh
ollama pull llama3.2
# Configure TestTeller for local use
testteller configure --provider llama
Docker Support
# Clone and setup
git clone https://github.com/iAviPro/testteller-agent.git
cd testteller-agent
cp .env.example .env # Add your API keys
docker-compose up -d
# Use with Docker
docker-compose exec app testteller configure
docker-compose exec app testteller ingest-docs document.pdf --collection-name project
Documentation
- Complete Features - Detailed feature descriptions and capabilities
- Technical Architecture - System design and technical details
- Command Reference - Complete CLI command documentation
- Testing Guide - Test suite and validation documentation
Common Issues
Run testteller configure if you encounter API key errors. For Docker issues, check logs with docker-compose logs app.
License
This project is licensed under the Apache-2.0 License - see the LICENSE file for details.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file testteller-2.0.3.tar.gz.
File metadata
- Download URL: testteller-2.0.3.tar.gz
- Upload date:
- Size: 142.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2d4a1658c3b845ea67073b8a6c0693f8500eeea35c06fcbc04e1d057f3ab752a
|
|
| MD5 |
1c50165d7b26d78df938eab096fe7bb2
|
|
| BLAKE2b-256 |
d228e8b8f6e339b650b0107975d15ef79a58ed945c5942ac708047e2944ee827
|
File details
Details for the file testteller-2.0.3-py3-none-any.whl.
File metadata
- Download URL: testteller-2.0.3-py3-none-any.whl
- Upload date:
- Size: 153.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f40ee843f90fa3a8babf18826127b8c89b5272aa0549de478c258e61bc3f80e3
|
|
| MD5 |
b1502a83e6b59ae332ffb843ea24438d
|
|
| BLAKE2b-256 |
be60d7c77bf565b5ef8616819ac0be8b6d42562235e9996a198fa55985db2035
|