Skip to main content
Testing

Write focused tests for existing code

Point Gemini at a function and its framework, ask for the highest-value cases first (happy path, edges, failure modes), and have it flag behaviour that looks like a bug instead of testing it as correct.

The prompt

Write tests for [FUNCTION] using [TEST FRAMEWORK]. Cover the happy path, edge cases, and failure modes, ordered by value. Use the existing test conventions in the repo. If any current behaviour looks like a bug, flag it instead of encoding it as expected. Code: [CODE].

Replace the variables

[FUNCTION]

The unit under test.

[TEST FRAMEWORK]

e.g. Vitest, Jest, pytest.

Which model to use

  • Gemini 3.6 FlashTest scaffolding is fast and mechanical enough for Flash.

Example input

  • [FUNCTION] = "parsePrice(input)". [TEST FRAMEWORK] = "Vitest".

Example output

We only publish example outputs from real model runs. This template has not been formally tested yet, so no output is shown. Run it yourself with the input above.

Why this structure works

  • Value-ordered cases give you the most coverage per test.
  • "Flag suspected bugs" avoids cementing wrong behaviour.

Common failures & fixes

Tests pass but assert nothing meaningful.

Fix: Require at least one edge case and one failure case with real assertions.

Known limitations

  • Run the tests; generated tests can be shallow or wrong.

Not affiliated with or endorsed by Google. Gemini, Nano Banana, and Veo are trademarks of Google LLC.