עבור לעברית

Docs

Everything you need to know about the Q-Ace Agentic Framework.

 Q-Ace Auto

Next-Generation Automation Management System

Q-Ace Auto is a comprehensive web-based platform for managing, executing, and monitoring Pytest/Playwright automation projects. Built with modern technologies and a premium UI, it provides everything you need to streamline your test automation workflow.


 Features

🎯 Project Management

  • Multi-project workspace support
  • Project validation and health checks
  • Easy project switching with visual indicators
  • Automatic project structure detection

🏗️ Smart Infrastructure Injection

  • Automatic pytest configuration (pytest.ini)
  • Playwright/Selenium conftest.py generation
  • Custom fixtures and utilities injection
  • Template-based infrastructure setup
  • Support for both Playwright and Selenium frameworks

🎮 Control Center

  • Live test execution with real-time terminal streaming
  • Interactive test selection (individual tests or full suites)
  • Advanced execution options:
    • Headless/Headed mode
    • Browser selection (Chromium, Firefox, WebKit)
    • Verbosity levels (Quiet, Normal, Verbose)
    • Run speed control (--slowmo)
    • Timeout configuration
    • Screen resolution settings
    • Parallel execution support
  • WebSocket-based live output streaming
  • Session management with unique execution IDs

📊 Analytics & Reports

  • Comprehensive test execution reports
  • Interactive dashboard with statistics
  • Test result filtering (Passed/Failed)
  • Search functionality for test cases
  • Video playback for failed tests
  • Trace file generation and viewing
  • Duration tracking and performance metrics
  • Historical test data visualization with Chart.js
  • Export reports to PDF
  • Email report delivery

Scheduler

  • Automated test execution scheduling
  • Multiple schedule types:
    • Daily - Run tests every day at a specific time
    • Weekly - Run tests on selected days of the week
    • Monthly - Run tests on specific days of the month
  • Active/Inactive toggle for schedules
  • Schedule management (create, edit, delete)
  • Persistent scheduling with APScheduler

🤖 AI Code Helper (Powered by Google Gemini)

  • AI-powered test code generation
  • Natural language to test code conversion
  • Context-aware suggestions based on project structure
  • Mock mode available when Gemini API is not configured
  • Syntax highlighting with Prism.js

⚙️ Configuration

  • Centralized settings management
  • Email configuration for report delivery
  • Google Gemini API key management
  • Persistent settings storage with SQLAlchemy
  • Environment variable support

🚀 Installation

Prerequisites

  • Python 3.8+ installed and added to PATH
  • Git (optional, for cloning the repository)

Windows

  1. Clone or download the project:

    git clone <repository-url>
    cd q-ace-auto
  2. Run the installation script:

    install.bat

    The script will automatically:

    • Create a virtual environment (venv)
    • Activate the virtual environment
    • Upgrade pip
    • Install Playwright
    • Install all project dependencies

Linux/Mac

  1. Clone or download the project:

    git clone <repository-url>
    cd q-ace-auto
  2. Make the installation script executable and run it:

    chmod +x install.sh
    ./install.sh

    The script will automatically:

    • Create a virtual environment (venv)
    • Activate the virtual environment
    • Upgrade pip
    • Install Playwright
    • Install all project dependencies

🎯 Usage

Running the Application

Windows

  1. Activate the virtual environment:

    venv\Scripts\activate
  2. Run the application:

    run.bat

Linux/Mac

  1. Activate the virtual environment:

    source venv/bin/activate
  2. Run the application:

    chmod +x run.sh
    ./run.sh

Accessing the Web Interface

Once the server is running, open your browser and navigate to:

http://localhost:8030

The application will automatically open the Dashboard where you can:

  1. Add or select a project
  2. Set up infrastructure (if needed)
  3. Run tests from the Control Center
  4. View reports and analytics
  5. Configure schedules
  6. Manage settings

📁 Project Structure

q-ace-auto/
├── app/                          # Backend application
│   ├── routers/                  # FastAPI route handlers
│   │   ├── projects.py          # Project management endpoints
│   │   ├── injector.py          # Infrastructure injection endpoints
│   │   ├── tests.py             # Test execution endpoints
│   │   ├── reports.py           # Report generation endpoints
│   │   ├── scheduler.py         # Scheduling endpoints
│   │   ├── settings.py          # Settings management endpoints
│   │   └── gemini.py            # AI code generation endpoints
│   ├── services/                 # Business logic services
│   │   ├── project_validator.py # Project validation logic
│   │   ├── smart_injector.py    # Infrastructure injection logic
│   │   ├── test_executor.py     # Test execution logic
│   │   ├── report_parser.py     # Report parsing logic
│   │   ├── report_generator.py  # PDF report generation
│   │   ├── scheduler_service.py # Scheduling service
│   │   ├── email_service.py     # Email delivery service
│   │   └── gemini_client.py     # Google Gemini API client
│   ├── templates/                # Infrastructure templates
│   │   └── injection/           # pytest/playwright templates
│   ├── database.py              # Database initialization
│   ├── models.py                # SQLAlchemy models
│   └── main.py                  # FastAPI application entry point
├── static/                       # Frontend assets
│   ├── css/                     # Stylesheets
│   ├── js/                      # JavaScript modules
│   │   ├── core/               # Core utilities (state, API, router)
│   │   ├── modules/            # Feature modules (control, reports, etc.)
│   │   └── app_main.js         # Main application entry point
│   ├── views/                   # HTML view templates
│   │   ├── home.html           # Dashboard view
│   │   ├── setup.html          # Infrastructure setup view
│   │   ├── control-center.html # Test execution view
│   │   ├── reports.html        # Analytics view
│   │   └── settings.html       # Configuration view
│   ├── images/                  # Image assets
│   └── index.html              # Main HTML shell
├── data/                        # Application data
│   └── app.db                  # SQLite database
├── requirements.txt             # Python dependencies
├── install.bat                  # Windows installation script
├── install.sh                   # Linux/Mac installation script
├── run.bat                      # Windows run script
├── run.sh                       # Linux/Mac run script
└── README.md                    # This file

🛠 ️ Technologies

Backend

  • FastAPI - Modern, fast web framework for building APIs
  • SQLAlchemy - SQL toolkit and ORM
  • APScheduler - Advanced Python Scheduler for job scheduling
  • Uvicorn - ASGI server implementation
  • WebSockets - Real-time bidirectional communication
  • FPDF2 - PDF report generation
  • aiosmtplib - Async SMTP client for email delivery

Frontend

  • TailwindCSS - Utility-first CSS framework
  • Chart.js - Interactive charts and graphs
  • XTerm.js - Terminal emulator in the browser
  • Lucide Icons - Beautiful icon library
  • Prism.js - Syntax highlighting for code blocks

Testing Frameworks (Managed Projects)

  • Pytest - Python testing framework
  • Playwright - Browser automation framework
  • Selenium - Web browser automation (alternative support)

AI Integration

  • Google Gemini - AI-powered code generation (optional)

📚 API Documentation

Once the application is running, you can access the auto-generated API documentation at:


🎨 UI/UX Features

  • Dark Mode - Premium dark theme with glassmorphism effects
  • Responsive Design - Works on desktop and tablet devices
  • Real-time Updates - WebSocket-based live terminal streaming
  • Interactive Charts - Visual representation of test metrics
  • Smooth Animations - Polished transitions and micro-interactions
  • Accessibility - Semantic HTML and keyboard navigation support

🔧 Configuration

Email Settings

To enable email report delivery:

  1. Navigate to Configuration in the sidebar
  2. Enter your SMTP server details:
    • SMTP Server (e.g., smtp.gmail.com)
    • SMTP Port (e.g., 587)
    • Email Address
    • Email Password
    • Recipient Email
  3. Click Save Settings

Google Gemini API

To enable AI code generation:

  1. Obtain a Gemini API key from Google AI Studio
  2. Navigate to Configuration in the sidebar
  3. Enter your API key in the Gemini API Key field
  4. Click Save Settings

Note: If no API key is configured, the system will use mock mode for AI features.


📝 License

This project is developed and maintained by ATID - עתיד האוטומציה.


🤝 Support

For questions, issues, or feature requests, please contact the ATID team.


Built with ❤️ by ATID College

Was this page helpful?