# TestTeller Agent
[](https://www.python.org/downloads/)
[](https://pypi.org/project/testteller/)
[](https://hub.docker.com/r/iavipro/testteller)
[](https://github.com/iAviPro/testteller-agent/actions/workflows/test-unit.yml)
[](https://pepy.tech/project/testteller)
[](https://opensource.org/licenses/Apache-2.0)
**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](FEATURES.md)** | **[Technical Architecture](ARCHITECTURE.md)**
## Quick Start
### Prerequisites
- Python 3.11+
- API key for at least one LLM provider:
- [Google Gemini](https://aistudio.google.com/) (recommended)
- [OpenAI](https://platform.openai.com/api-keys)
- [Anthropic Claude](https://console.anthropic.com/)
- [Ollama](https://ollama.ai/) (local or within accessible environment)
### Installation
#### Option 1: PyPI Installation
```bash
# Install from PyPI
pip install testteller
```
#### Option 2: Docker Installation
**Quick Testing (Docker Hub Image):**
```bash
# 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):**
```bash
# 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
```bash
# 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
```bash
# 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:**
```bash
# 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:
```bash
# 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
```bash
# 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](FEATURES.md)** - Detailed feature descriptions and capabilities
- **[Technical Architecture](ARCHITECTURE.md)** - System design and technical details
- **[Command Reference](COMMANDS.md)** - Complete CLI command documentation
- **[Testing Guide](TESTING.md)** - 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](LICENSE) file for details.
Raw data
{
"_id": null,
"home_page": null,
"name": "testteller",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.11",
"maintainer_email": null,
"keywords": "testing, ai, rag, test-automation, code-generation, llm, pytest, qa, quality-assurance, test-cases, vector-store, chromadb, generative-ai, openai, anthropic, claude, gemini, junit, jest, testng, automation-framework",
"author": "Aviral Nigam",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/d2/28/e8b8f6e339b650b0107975d15ef79a58ed945c5942ac708047e2944ee827/testteller-2.0.3.tar.gz",
"platform": null,
"description": "# TestTeller Agent\n\n[](https://www.python.org/downloads/)\n[](https://pypi.org/project/testteller/)\n[](https://hub.docker.com/r/iavipro/testteller)\n[](https://github.com/iAviPro/testteller-agent/actions/workflows/test-unit.yml)\n[](https://pepy.tech/project/testteller)\n[](https://opensource.org/licenses/Apache-2.0)\n\n**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**.\n\n## Why TestTeller?\n\nTestTeller 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.\n\n### Test Types Generated\n- **End-to-End (E2E) Tests**: Complete user journeys across frontend, middleware, and backend services\n- **Integration Tests**: Component integration (FE-BE, service-to-service, event-driven) and contract validation \n- **Technical Tests**: Performance, security, resilience testing with infrastructure focus\n- **Mocked System Tests**: Isolated component testing with mocked dependencies\n\n### Critical Features\n- **Dual-Feedback RAG Enhancement**: Self-improving system that learns from generation cycles and stores high-quality outputs\n- **Multi-Provider LLM Support**: Works with Google Gemini, OpenAI, Anthropic Claude, and local Llama/Ollama\n- **Universal Document Intelligence**: Advanced parsing for PDFs, DOCX, XLSX, MD, TXT with context understanding\n- **Code Repository Analysis**: Ingests and analyzes code from GitHub repos or local folders.\n\n### Supported Languages & Frameworks \n**Test Generation**: All test types with tabular summaries and detailed specifications \n**Automation**: Python (pytest, unittest), JavaScript/TypeScript (Jest, Mocha, Cypress, Playwright), Java (JUnit, TestNG), and more\n\n**Real-world workflow**: Ingest project (PRDs/Contracts/Design/Schema etc.) documentation & project code \u2192 Generate strategic test cases covering authentication, error handling, and edge cases \u2192 Create executable Selenium/Playwright automation with proper setup and assertions \u2192 Commit your code.\n\n## Key Features\n\n- **\ud83e\udd16 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)\n- **\u26a1 Automator Agent**: Multi-language code generation across **Python, JavaScript, TypeScript, Java** with **20+ framework support** (pytest, Jest, JUnit, Playwright, Cypress, Cucumber, etc.)\n- **\ud83d\udd27 Multi-Provider GenAI/LLM**: Choose your AI provider - **Google Gemini, OpenAI, Anthropic Claude**, or run completely **local with Llama/Ollama**\n- **\ud83d\udcc4 Universal Document Intelligence**: Advanced RAG ingestion for **PDFs, DOCX, XLSX, MD, TXT** - understands context and generates appropriate test focus\n- **\ud83d\udd04 Self-Learning System**: Dual-feedback architecture gets smarter with each use - stores high-quality outputs and learns from automation success patterns\n\n\u2192 **[View Detailed Features](FEATURES.md)** | **[Technical Architecture](ARCHITECTURE.md)**\n\n## Quick Start\n\n### Prerequisites\n- Python 3.11+\n- API key for at least one LLM provider:\n - [Google Gemini](https://aistudio.google.com/) (recommended)\n - [OpenAI](https://platform.openai.com/api-keys)\n - [Anthropic Claude](https://console.anthropic.com/)\n - [Ollama](https://ollama.ai/) (local or within accessible environment)\n\n### Installation\n\n#### Option 1: PyPI Installation\n```bash\n# Install from PyPI\npip install testteller\n```\n\n#### Option 2: Docker Installation\n\n**Quick Testing (Docker Hub Image):**\n```bash\n# Pull and run from Docker Hub for quick testing\ndocker pull iavipro/testteller:latest\n\n# Run single commands\ndocker run -it \\\n -e GOOGLE_API_KEY=your_api_key \\\n -v $(pwd)/docs:/app/docs \\\n -v $(pwd)/output:/app/output \\\n iavipro/testteller:latest testteller --help\n\n# Example: Generate test cases\ndocker run -it \\\n -e GOOGLE_API_KEY=your_api_key \\\n -v $(pwd):/app/workspace \\\n iavipro/testteller:latest testteller generate \"API tests\" --output-file /app/workspace/tests.pdf --collection-name my_collection\n```\n\n**Full Development Setup (Docker Compose):**\n```bash\n# Clone repository for complete setup with ChromaDB\ngit clone https://github.com/iAviPro/testteller-agent.git\ncd testteller-agent\n\n# Setup environment variables\ncp .env.example .env\n# Edit .env file and add your API keys (GOOGLE_API_KEY, OPENAI_API_KEY, CLAUDE_API_KEY)\n\n# Start all services (TestTeller + ChromaDB)\ndocker-compose up -d\n\n# Configure and use\ndocker-compose exec app testteller configure\ndocker-compose exec app testteller ingest-docs /path/to/document.pdf --collection-name project\ndocker-compose exec app testteller generate \"API integration tests\" --collection-name project\n\n# Stop services\ndocker-compose down\n```\n\n#### Option 3: From Source\n```bash\n# Install from source\ngit clone https://github.com/iAviPro/testteller-agent.git\ncd testteller-agent\npip install -e .\n```\n\n### Basic Usage - Get Started in 2 Minutes\n\n```bash\n# 1. Configure your LLM provider (interactive wizard)\ntestteller configure\n\n# 2. Ingest your documentation (supports PDF, DOCX, XLSX, MD, TXT)\ntestteller ingest-docs requirements.pdf --collection-name my_project\n\n# 3. Ingest code from repository or local folder\ntestteller ingest-code https://github.com/user/repo --collection-name my_project\n# OR: testteller ingest-code ./src --collection-name my_project\n\n# 4. Generate strategic test cases with RAG context\ntestteller generate \"Create comprehensive API integration tests\" --collection-name my_project --output-file tests.pdf\n\n# 5. Generate executable automation code\ntestteller automate tests.pdf --language python --framework pytest --output-dir ./tests\n```\n\n**Enhanced Examples:**\n\n```bash\n# E2E Testing Workflow\ntestteller ingest-docs user_stories.pdf --collection-name webapp\ntestteller ingest-code ./frontend --collection-name webapp \ntestteller generate \"E2E user registration and checkout flow\" --collection-name webapp\ntestteller automate output.pdf --language javascript --framework cypress\n\n# API Testing with Security Focus\ntestteller ingest-docs api_spec.pdf --collection-name api\ntestteller generate \"API security and integration tests\" --collection-name api --output-format pdf\ntestteller automate tests.pdf --language python --framework pytest\n\n# Microservices Testing\ntestteller ingest-code ./services --collection-name microservices\ntestteller generate \"Inter-service communication and resilience tests\" --collection-name microservices\ntestteller automate output.pdf --language java --framework junit\n```\n\n**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.\n\n### Try TestTeller Now\n\n**No API Keys?** No problem - use local Llama:\n```bash\n# Install Ollama (macOS/Linux) \ncurl -fsSL https://ollama.ai/install.sh | sh\nollama pull llama3.2\n\n# Configure TestTeller for local use\ntestteller configure --provider llama\n```\n\n## Docker Support\n\n```bash\n# Clone and setup\ngit clone https://github.com/iAviPro/testteller-agent.git\ncd testteller-agent\ncp .env.example .env # Add your API keys\ndocker-compose up -d\n\n# Use with Docker\ndocker-compose exec app testteller configure\ndocker-compose exec app testteller ingest-docs document.pdf --collection-name project\n```\n\n## Documentation\n\n- **[Complete Features](FEATURES.md)** - Detailed feature descriptions and capabilities\n- **[Technical Architecture](ARCHITECTURE.md)** - System design and technical details \n- **[Command Reference](COMMANDS.md)** - Complete CLI command documentation\n- **[Testing Guide](TESTING.md)** - Test suite and validation documentation\n\n## Common Issues\n\nRun `testteller configure` if you encounter API key errors. For Docker issues, check logs with `docker-compose logs app`.\n\n\n---\n\n## License\n\nThis project is licensed under the Apache-2.0 License - see the [LICENSE](LICENSE) file for details.\n",
"bugtrack_url": null,
"license": "Apache License 2.0",
"summary": "AI-Powered Test Agent for Test Case Generation and Automation using RAG & GenAI",
"version": "2.0.3",
"project_urls": null,
"split_keywords": [
"testing",
" ai",
" rag",
" test-automation",
" code-generation",
" llm",
" pytest",
" qa",
" quality-assurance",
" test-cases",
" vector-store",
" chromadb",
" generative-ai",
" openai",
" anthropic",
" claude",
" gemini",
" junit",
" jest",
" testng",
" automation-framework"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "be60d7c77bf565b5ef8616819ac0be8b6d42562235e9996a198fa55985db2035",
"md5": "b1502a83e6b59ae332ffb843ea24438d",
"sha256": "f40ee843f90fa3a8babf18826127b8c89b5272aa0549de478c258e61bc3f80e3"
},
"downloads": -1,
"filename": "testteller-2.0.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "b1502a83e6b59ae332ffb843ea24438d",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.11",
"size": 153282,
"upload_time": "2025-07-23T12:48:25",
"upload_time_iso_8601": "2025-07-23T12:48:25.085001Z",
"url": "https://files.pythonhosted.org/packages/be/60/d7c77bf565b5ef8616819ac0be8b6d42562235e9996a198fa55985db2035/testteller-2.0.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "d228e8b8f6e339b650b0107975d15ef79a58ed945c5942ac708047e2944ee827",
"md5": "1c50165d7b26d78df938eab096fe7bb2",
"sha256": "2d4a1658c3b845ea67073b8a6c0693f8500eeea35c06fcbc04e1d057f3ab752a"
},
"downloads": -1,
"filename": "testteller-2.0.3.tar.gz",
"has_sig": false,
"md5_digest": "1c50165d7b26d78df938eab096fe7bb2",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.11",
"size": 142013,
"upload_time": "2025-07-23T12:48:26",
"upload_time_iso_8601": "2025-07-23T12:48:26.593549Z",
"url": "https://files.pythonhosted.org/packages/d2/28/e8b8f6e339b650b0107975d15ef79a58ed945c5942ac708047e2944ee827/testteller-2.0.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-23 12:48:26",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "testteller"
}