Skip to content

Latest commit

 

History

History
146 lines (111 loc) · 6.24 KB

File metadata and controls

146 lines (111 loc) · 6.24 KB

🚀 TestPilot.AI

Next.js Tailwind CSS GitHub Copilot SDK License: MIT

TestPilot.AI Banner

Automated Testing Platform powered by GitHub Copilot

Analyze web applications and generate comprehensive Playwright test suites in seconds.


📖 Overview

TestPilot.AI is an AI-driven platform designed to accelerate quality assurance. By leveraging the GitHub Copilot SDK, it crawls target URLs, identifies critical user flows, and automatically generates high-quality Playwright test strategies and code artifacts.

It's not just a code generator; it's an intelligent QA companion that understands site structures and produces valid Page Object Models (POMs) and test specs tailored to the application's unique ecosystem.

✨ Key Features

Feature Description
🔍 URL Analysis GitHub Copilot Client extracts title, description, internal links, accessibility tree and form structures.
🤖 AI-Powered Artifacts Generates detailed test strategies and Playwright code using GitHub Copilot SDK.
⚒️ Smart Validation Automatically validates generated code for syntax and type errors via the TypeScript Compiler API.
📦 ZIP Packaging Download the entire Playwright test suite, including package.json and POMs, in a single ZIP file.
🌓 Modern Dashboard Advanced UI with Strategy View, Code Viewer (with syntax highlighting), and Dark Mode support.
📊 Real-time Progress Visual feedback during the analysis process with sequential state indicators using GitHub Copilot SDK.

🛠️ Tech Stack

📂 Project Structure

src/
├── app/                  # Next.js App Router (pages & API)
│   ├── api/agent/        # Core agent logic and backend endpoints
│   └── globals.css       # Global styles (Tailwind 4)
├── components/           # UI Component Library
│   ├── dashboard/        # Analysis results, CodeViewer, StrategyView
│   ├── landing/          # Hero and landing page sections
│   ├── layout/           # Header, Footer, and navigation
│   └── ui/               # Reusable Radix/Shadcn primitives
├── lib/                  # Business logic & utilities
│   ├── mdParser.ts       # Markdown parsing for AI responses
│   ├── parser.ts         # Web crawler and scraper logic
│   ├── validator.ts      # TypeScript syntax validation
│   └── metrics.ts        # Performance and usage tracking
└── docs/                 # Project documentation and roadmap

🚀 Getting Started

Prerequisites

  • Node.js: ^20.x or later.
  • Package Manager: pnpm (recommended).
  • GitHub Copilot: Access to GitHub Copilot (the agent uses the SDK which requires authentication).

Installation

  1. Clone the repository:

    git clone https://github.com/fugazi/testpilot-ai.git
    cd testpilot-ai
  2. Install dependencies:

    pnpm install
  3. Install the GitHub Copilot CLI and the Copilot extension: Installing the GitHub Copilot CLI is necessary to authenticate your Copilot session.

    # Install the GitHub Copilot CLI
    npm install -g @github/copilot-cli
    
    # Install the Copilot extension
    npm install -g @github/copilot
  4. Authenticate with GitHub Copilot (Mandatory): An active GitHub Copilot subscription is required to use the GitHub Copilot SDK.

    copilot auth login

Running the Project

# Start development server
pnpm dev

# Build for production
pnpm build

# Run unit tests
pnpm test

# Run linting
pnpm lint

⚙️ How it Works

  1. Input: User provides a URL (e.g., https://example.com).
  2. Crawl: The system performs a server-side fetch and analyzes the HTML to understand forms, buttons, and links.
  3. Agent: The data is sent to the GitHub Copilot Agent with a specialized QA Prompt.
  4. Validation: The AI's response is parsed, and any code blocks are validated for syntax correctness.
  5. Output: The user receives a structured Test Strategy and a set of Playwright files ready to use.

🗺️ Roadmap & Phases

Check the current progress in our Plan Phases document:

  • Phase 1: MVP Core & Basic Agent integration.
  • 🚧 Phase 2: UI/UX Overhaul & Artifact Validation (Current).
  • 📅 Phase 3: Playwright MCP Integration for dynamic exploration.

🏠 Developer

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.


Made with ❤️ by Douglas Urrea Ocampo for the QA Community