P
💻DeveloppementIntermediateAll AIs

GitHub Copilot Prompt for Creating E2E Tests

End-to-end (E2E) tests are essential for validating the overall functionality of an application, but writing them is often time-consuming and repetitive. GitHub Copilot, integrated directly into your code editor, can significantly speed up this process by generating comprehensive test scenarios from natural language descriptions. Whether you use Playwright, Cypress, or Selenium, Copilot understands the context of your project—components, routes, selectors—to produce realistic and maintainable tests. The challenge is to craft prompts precise enough to obtain tests that cover critical user journeys, handle wait states and assertions robustly, while respecting your testing framework's best practices. In this guide, you will find an optimized main prompt as well as variants adapted to your experience level to get the most out of GitHub Copilot in creating your E2E tests.

Paste in your AI

Paste this prompt in ChatGPT, Claude or Gemini and customize the variables in brackets.

Generate an end-to-end test suite with Playwright in TypeScript for the following user journey: [DESCRIBE_JOURNEY, e.g., registration, login, add to cart, checkout]. For each step of the journey, create an independent test within a describe block. Use the following best practices: accessible selectors (getByRole, getByText, getByTestId), explicit expectations with expect and toBeVisible/toHaveText, handling loading states with waitForLoadState, fixtures for reusable authentication, and the Page Object Model pattern to encapsulate interactions with each page. Add assertions on URLs, displayed content, and visual states. Include a playwright.config.ts configuration file with baseURL, retries, and HTML reporter. Comment each section to explain the test logic.

Personalize this prompt with Léa

Answer 3 questions and Léa tailors the prompt to your situation.

Why this prompt works

This prompt works because it specifies the framework (Playwright), language (TypeScript), and concrete user journey, eliminating ambiguity for Copilot. It imposes precise architectural patterns like the Page Object Model and accessible selectors, guiding generation toward maintainable code. Finally, it explicitly requests configuration, assertions, and comments, resulting in a complete, ready-to-run deliverable.

Use Cases

Create E2E Tests

Variants

Expected Output

Copilot generates a structured E2E test suite with a Playwright configuration file, Page Object classes for each page in the journey, and tests organized by describe/test covering each step. Each test includes robust selectors, explicit assertions on the DOM and URLs, and handling of asynchronous states. The code is commented and directly executable with npx playwright test.

Frequently Asked Questions

How does GitHub Copilot handle dynamic selectors in E2E tests?

Copilot analyzes your project context to suggest the most stable selectors. If you have data-testid attributes in your source code, it will automatically prioritize them. For best results, specify the desired selector type (getByRole, getByTestId, getByText) in your prompt, and Copilot will comply. Avoid fragile CSS class-based selectors by explicitly mentioning this in your instruction.

Can Copilot generate E2E tests for Cypress or Selenium in addition to Playwright?

Yes, GitHub Copilot supports all major E2E testing frameworks. Simply replace 'Playwright' with 'Cypress' or 'Selenium WebDriver' in your prompt. Copilot will automatically adapt the syntax: cy.visit() and cy.get() for Cypress, driver.findElement() and driver.get() for Selenium. For best results, open an existing test file from the target framework before writing your prompt so Copilot can capture the context.

How do I integrate Copilot-generated E2E tests into a CI/CD pipeline?

Copilot-generated tests are directly compatible with CI/CD pipelines. In your prompt, ask to include the CI configuration (GitHub Actions, GitLab CI) alongside the tests. Copilot can generate a complete YAML workflow with dependency installation, a development server startup, test execution with retries, and report and artifact publishing (screenshots, traces). Be sure to request environment variable handling via CI secrets for credentials.

Learn more

Check the full skill on Prompt Guide to master this technique from A to Z.

View on Prompt Guide

📬 Get new prompts every week

Join our newsletter and never miss a prompt.

Similar Prompts

💻DeveloppementIntermediateAll AIs

Generate Mocks and Fixtures for Your Automated Tests

A prompt to automatically generate realistic mocks, stubs and data fixtures adapted to your test framework and use cases.

091
💻DeveloppementIntermediateAll AIs

Automatically Generate Unit Tests with AI

Automatically generate an exhaustive unit test suite covering nominal cases, edge cases, and error cases for any source code.

0223
💻DeveloppementIntermediateGemini

Create a Python Automation Script

Create a professional Python automation script with CLI configuration, structured logging, error handling, and tests.

24239
💻DeveloppementAdvancedAll AIs

Analyze and Optimize Algorithmic Complexity

Analyze the Big O complexity of your algorithms and optimize them with appropriate data structures and more efficient algorithms.

40233