JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 4
  • Score
    100M100P100Q51725F
  • License MIT

🚀 TestGenius AI - The Ultimate E2E Testing Framework for Everyone | No Coding Required â€ĸ AI-Powered Automation â€ĸ Beautiful Reports â€ĸ Zero Complexity

Package Exports

  • testgenius-ai
  • testgenius-ai/dist/bin/testgenius.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (testgenius-ai) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

🧠 TestGenius AI

TestGenius AI Version Downloads License Powered by WebdriverIO

🚀 The Ultimate E2E Testing Framework for QA Engineers

No coding required â€ĸ AI-powered automation â€ĸ Beautiful reports â€ĸ Zero complexity

npm install


✨ What Makes TestGenius Special?

đŸŽ¯ For QA Engineers 🚀 For Developers 🎨 For Everyone
â€ĸ No programming skills needed â€ĸ TypeScript support â€ĸ Beautiful HTML reports
â€ĸ Interactive test recording â€ĸ Flexible configuration â€ĸ Auto-screenshots on failure
â€ĸ Simple test objects â€ĸ Extensible framework â€ĸ Cross-platform support
â€ĸ One-command setup â€ĸ Custom test runners â€ĸ Zero dependencies

đŸŽŦ See It In Action

📋 List Your Tests

testgenius list

🚀 Run Tests

testgenius run AUTH-001

📊 View Reports

testgenius report

🚀 Quick Start (3 Steps)

1ī¸âƒŖ Install

# Install latest version
npm install -g testgenius-ai

# Or explicitly install latest
npm install -g testgenius-ai@latest

# Check current version
testgenius --version

# Update to latest version
npm update -g testgenius-ai

2ī¸âƒŖ Initialize

testgenius init

Creates everything you need automatically!

3ī¸âƒŖ Start Testing

testgenius record    # Record a new test
testgenius run       # Run all tests
testgenius report    # View results

đŸ“Ļ Version Management

🔄 Always Get the Latest Version

TestGenius AI automatically provides the latest version when you install:

# Install latest version (recommended)
npm install -g testgenius-ai

# Explicitly install latest
npm install -g testgenius-ai@latest

# Update existing installation
npm update -g testgenius-ai

📋 Check Your Version

# Check current version
testgenius --version

# Check version and look for updates
testgenius version

đŸŽ¯ Version Features

  • Automatic Updates: npm always installs the latest version by default
  • Version Checking: Built-in command to check for updates
  • Backward Compatibility: New versions maintain compatibility with existing tests
  • Release Notes: Check GitHub releases for detailed changes

📝 Writing Tests (Super Simple!)

đŸŽ¯ Test File Structure

Create files in tests/ directory:

// tests/login-tests.js
module.exports = [
  {
    id: "LOGIN-001",
    name: "Successful Login Test",
    description: "Test login with valid credentials",
    priority: "High",
    tags: ["authentication", "login", "smoke"],
    site: "https://example.com/login",
    testData: {
      username: "testuser@example.com",
      password: "securepassword123"
    },
    task: "Navigate to login page, enter credentials, click login, verify dashboard access"
  },
  {
    id: "LOGIN-002", 
    name: "Failed Login Test",
    description: "Test login with invalid credentials",
    priority: "Medium",
    tags: ["authentication", "login", "validation"],
    site: "https://example.com/login",
    testData: {
      username: "invalid@example.com",
      password: "wrongpassword"
    },
    task: "Navigate to login page, enter invalid credentials, verify error message appears"
  }
];

đŸŽŦ Interactive Test Recording

Don't want to write tests manually? Use the recorder!

testgenius record

Follow the prompts and TestGenius will create your test automatically!


đŸ› ī¸ Essential Commands

Command What It Does Example
testgenius init 🚀 Setup your project testgenius init
testgenius record đŸŽŦ Record a new test testgenius record
testgenius list 📋 Show all tests testgenius list
testgenius run 🚀 Run all tests testgenius run
testgenius run <id> đŸŽ¯ Run specific test testgenius run LOGIN-001
testgenius report 📊 View results testgenius report

đŸŽ¯ Advanced Run Options

📁 File-Based Execution

Run tests from specific files or multiple files:

# Run tests from a single file
testgenius run -f tests/auth-tests.js

# Run tests from multiple files
testgenius run --files tests/auth-tests.js tests/ui-tests.js

# Exclude specific files
testgenius run --exclude auth-tests.js

đŸŽ¯ Test ID Filtering

Run specific tests by their IDs:

# Run a single test by ID
testgenius run LOGIN-001

# Run multiple specific tests
testgenius run --testIds LOGIN-001 LOGIN-002 AUTH-001

đŸˇī¸ Tag and Priority Filtering

Filter tests by tags or priority levels:

# Run tests with specific tag
testgenius run --tag smoke

# Run high priority tests only
testgenius run --priority High

# Run medium priority tests with specific tag
testgenius run --priority Medium --tag regression

🌐 Browser and Mode Options

Customize browser and execution mode:

# Run in headless mode
testgenius run --headless

# Use specific browser
testgenius run --browser firefox

# Combine options
testgenius run --headless --browser chrome --tag smoke

📂 Custom Test Directory

Load tests from a custom directory:

# Use custom tests directory
testgenius run --testsDir src/tests

# Combine with file filtering
testgenius run --testsDir src/tests -f src/tests/auth.js

🎨 Test Examples

🔐 Authentication Tests

// tests/auth-tests.js
module.exports = [
  {
    id: "AUTH-001",
    name: "User Registration",
    priority: "High",
    tags: ["registration", "signup"],
    site: "https://myapp.com/register",
    testData: {
      email: "newuser@example.com",
      password: "SecurePass123!",
      confirmPassword: "SecurePass123!"
    },
    task: "Fill registration form, submit, verify welcome message"
  }
];

🛒 E-commerce Tests

// tests/ecommerce-tests.js
module.exports = [
  {
    id: "ECOMM-001",
    name: "Add to Cart",
    priority: "High", 
    tags: ["cart", "purchase"],
    site: "https://shop.example.com",
    testData: {
      productName: "Test Product",
      quantity: "2"
    },
    task: "Search for product, add to cart, verify cart count increases"
  }
];

📱 Mobile/Responsive Tests

// tests/mobile-tests.js
module.exports = [
  {
    id: "MOBILE-001",
    name: "Mobile Menu Navigation",
    priority: "Medium",
    tags: ["mobile", "responsive"],
    site: "https://example.com",
    testData: {},
    task: "Open mobile menu, navigate through items, verify smooth transitions"
  }
];

đŸŽ¯ Advanced Features

🤖 AI-Powered Test Execution

  • Smart element detection
  • Automatic retry logic
  • Intelligent error handling
  • Context-aware actions

📊 Beautiful Reporting

  • HTML reports with screenshots
  • Test execution timeline
  • Pass/fail statistics
  • Performance metrics

🏆 Allure Reporting (Optional)

TestGenius AI supports Allure for advanced, interactive test reports.

Enable Allure in your config:

// testgenius.config.js
module.exports = {
  browser: 'chrome',           // chrome, firefox, safari, edge
  headless: false,             // true for CI/CD
  timeout: 30000,              // 30 seconds
  screenshotOnFailure: true,   // Auto-screenshots
  reportPath: './reports',     // Custom report location
  logLevel: 'info',            // debug, info, warn, error
  reporting: {
    outputDir: 'reports',
    allure: {
      enabled: true, // Enable Allure reporting
      resultsDir: 'allure-results',
      reportDir: 'allure-report',
      attachments: true
    }
  }
};

Or use the CLI flag for one-off runs:

testgenius run --allure

View Allure reports:

# Open Allure report in browser
testgenius report --allure

# Serve Allure report on a custom port
testgenius report --allure --serve 8080

â„šī¸ Allure is optional. If not enabled, TestGenius will generate simple HTML reports by default.

🔧 Flexible Configuration

// testgenius.config.js
module.exports = {
  browser: 'chrome',           // chrome, firefox, safari, edge
  headless: false,             // true for CI/CD
  timeout: 30000,              // 30 seconds
  screenshotOnFailure: true,   // Auto-screenshots
  reportPath: './reports',     // Custom report location
  logLevel: 'info'             // debug, info, warn, error
};

🚨 Troubleshooting

❌ "Command not found: testgenius"

Solution: Add npm global bin to your PATH

For macOS/Linux:

# Find your npm global path
npm bin -g

# Add to your shell config (~/.zshrc or ~/.bashrc)
export PATH="$PATH:$(npm bin -g)"

# Reload shell
source ~/.zshrc  # or source ~/.bashrc

For Windows:

# Add to PATH environment variable
%APPDATA%\npm

❌ "Test not found"

Check:

  • ✅ Test file is in tests/ directory
  • ✅ Export format is correct: module.exports = [ {...} ]
  • ✅ Test ID is unique
  • ✅ Run testgenius list to see all available tests

❌ "Wrong export format"

❌ Wrong:

module.exports = {
  TEST_1: { id: "TEST-1", ... },
  TEST_2: { id: "TEST-2", ... }
};

✅ Correct:

module.exports = [
  { id: "TEST-1", ... },
  { id: "TEST-2", ... }
];

🎉 Success Stories


🤝 Contributing

We love contributions! Here's how you can help:

  1. 🐛 Report bugs - Create an issue
  2. 💡 Suggest features - Start a discussion
  3. 📝 Improve docs - Submit a pull request
  4. ⭐ Star the repo - Show your support!

📚 Resources

  • 📖 Wiki - Detailed guides and examples
  • đŸŽĨ Video Tutorials - Step-by-step videos
  • đŸ’Ŧ Community - Ask questions and share tips
  • 🐛 Issues - Report bugs and request features

📄 License

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


⚡ Powered By

Built with the power of WebdriverIO - Next-gen browser and mobile automation test framework

WebdriverIO

TestGenius AI leverages WebdriverIO's powerful automation capabilities to provide a simple, AI-powered testing experience for everyone.


Made with â¤ī¸ for QA Engineers Worldwide

GitHub stars GitHub forks GitHub issues

Ready to revolutionize your testing?
Get Started Now →