agentsclimarketplace

Jest

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

A comprehensive skill catalog for AI agents

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

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

Jest JavaScript testing framework with snapshots. Use for JS testing.

SKILL.md

2.0 KB, as published. Nobody here has run it

Jest

Jest is a delightful JavaScript Testing Framework with a focus on simplicity. It works with projects using: Babel, TypeScript, Node, React, Angular, Vue, and more.

When to Use

  • React Apps: The default and most supported runner for Create React App / Next.js (historically).
  • Snapshot Testing: When you want to ensure UI or JSON structures haven't changed unexpectedly.
  • Legacy/Standard: Extensive community plugins and support.

Quick Start

// sum.js
function sum(a, b) {
  return a + b;
}
module.exports = sum;

// sum.test.js
const sum = require("./sum");

test("adds 1 + 2 to equal 3", () => {
  expect(sum(1, 2)).toBe(3);
});

Core Concepts

Matchers

Jest uses "matchers" to test values.

  • toBe(value): Exact equality (Object.is).
  • toEqual(value): Recursive equality (great for Objects/Arrays).
  • toContain(item): Checks if an array contains an item.

Mock Functions

jest.fn() creates a mock function. You can track calls, arguments, and instances.

const mockCallback = jest.fn((x) => 42 + x);
forEach([0, 1], mockCallback);
expect(mockCallback.mock.calls.length).toBe(2);

Async Testing

Jest supports async/await.

test("data is peanut butter", async () => {
  const data = await fetchData();
  expect(data).toBe("peanut butter");
});

Best Practices (2025)

Do:

  • Use test.each: For data-driven tests. Avoid writing valid/invalid test cases manually 10 times.
  • Isolate Tests: Tests should not depend on each other. Jest runs them in parallel.
  • Mock External APIs: Never hit real APIs in unit tests. Use jest.mock.

Don't:

  • Don't overuse Snapshots: Large snapshots are impossible to review. Use them for small, critical structures.
  • Don't ignore "Unhandled Promise Rejection": It usually means a test finished before an async operation completed.

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.