agentsclimarketplace

Cypress

Skill G1Joshi/Agent-Skills/skills/testing/cypress

A comprehensive skill catalog for AI agents

Install
npx -y skills add G1Joshi/Agent-Skills --skill cypress

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 10 stars10 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Cypress end-to-end testing for web apps. Use for E2E testing.

SKILL.md

1.9 KB, as published. Nobody here has run it

Cypress

Cypress is a next generation front end testing tool built for the modern web. It runs inside the browser (unlike Selenium/Playwright) which gives it native access to the DOM.

When to Use

  • Dev Experience: The interactive GUI is best-in-class for debugging.
  • Component Testing: Testing React/Vue/Angular components in isolation within a real browser.
  • Single Tab: Testing flows that happen in a single tab/window.

Quick Start

describe("My First Test", () => {
  it("Visits the Kitchen Sink", () => {
    cy.visit("https://example.cypress.io");
    cy.contains("type").click();
    cy.url().should("include", "/commands/actions");
    cy.get(".action-email")
      .type("[email protected]")
      .should("have.value", "[email protected]");
  });
});

Core Concepts

Chaining

Cypress commands run serially. cy.get().click().should() reads like a story.

Automatic Retries

Cypress automatically retries assertions until they pass or timeout. cy.get('.todo-list li').should('have.length', 2) will retry until the list has 2 items or 4 seconds elapse.

Stubbing

Because it runs in-browser, intercepting network requests (cy.intercept) is fast and reliable.

Best Practices (2025)

Do:

  • Use cy.intercept: Wait for network calls to finish before asserting UI. cy.wait('@apiCall').
  • Use Custom Commands: Extract repetitive logic (login) into cy.login().
  • Use Data Test Attributes: data-cy="submit-btn" allows you to change CSS/JS without breaking tests.

Don't:

  • Don't use wait(number): Never hard-code waits. Wait for routes or elements.
  • Don't test 3rd party sites: Cypress is for your app. It has safeguards that make testing Google/Github hard.

References

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.