Optics Framework¶
Welcome to the official documentation for the Optics Framework, an open-source test automation framework designed to simplify and streamline the creation and execution of automated tests across various platforms. Whether you're testing mobile apps (including DRM-enabled ones), Optics Framework provides a flexible, extensible, and user-friendly solution to meet your testing needs.
Key Features¶
-
Vision Powered
UI object detections powered by computer vision, not just XPath elements
-
No Code Automation
Build automation scripts without programming knowledge or IDE access
-
Non-Intrusive Drivers
Support for BLE mouse and keyboard for production monitoring
-
Data-Driven Testing
Execute test cases dynamically with multiple datasets
-
Extensible & Scalable
Easily add new keywords and modules without hassle
-
AI Integration
Choose which AI models to use for object recognition and OCR
-
Self-Healing
Automatic fallback to alternative detection methods when primary fails
-
Live Sessions
Drive a live target interactively and record sessions straight into modules. See Live Usage.
-
MCP & Agents
Expose every keyword as an MCP tool so AI clients drive a real target. See MCP Usage.
Quick Start¶
From zero to a runnable test project with one guided command:
Requires Python 3.12 or newer
Check first with python3 --version. On an older Python, install 3.12 — see Installation — then continue.
The wizard asks what you want to automate (Android, iOS, web…), installs the matching engine, scaffolds the project, writes a platform-correct config.yaml, and runs an environment check before printing your next steps.
Prefer to drive each step yourself?
pip install optics-framework
optics setup --install appium easyocr # install the engines you need
optics init my_test_project --template contact
# edit my_test_project/config.yaml for your device, start Appium + emulator, then:
optics dry_run my_test_project # validate without a device
optics execute my_test_project # run it
The Getting Started Guide explains every step.
Getting Started Guide Installation
Explore Documentation¶
-
Introduction
Learn about the framework's architecture and capabilities
-
Getting Started
Set up Optics and run your first test in minutes — guided or step by step
-
Architecture
Deep dive into the framework's architecture, components, and design patterns
-
User Workflow
Understand the typical workflow for creating and running tests
-
Usage
Comprehensive guides for CLI and keyword usage
-
API Reference
Python API documentation and REST API usage guides
-
Developer Guide
Learn how to extend and contribute to the framework
-
Contributing
Guidelines for contributing to the project
-
Help Wanted
Areas where we need your help to improve the framework
-
Code of Conduct
Our community standards and expectations
Need Help?¶
- GitHub Issues - Report bugs or request features
- Contact - Reach out for support