Search for AI test case generation and almost every answer ends the same way: buy our platform. You don't need one to start. A requirement and the assistant you already use are enough. The skill that matters is the one no tool can do for you: deciding which cases are worth testing.
Start from the requirement, not the code
Paste the ticket, the acceptance criteria or the manual test case. Leave the implementation out.
This is the most important step. If you give an assistant the code and ask for test cases, it describes what the code does, bugs included. If you give it the requirement, it describes what the code should do, and the gap between the two is where your bugs are.
Ask for cases, not code
Ask for a plain list first, one line per case: the input or situation, the expected result, and why it matters. Ask it to include edge cases and error cases the requirement implies. Say explicitly that you do not want code yet.
A list is quick to read and cheap to change. Code is neither, and it tends to lock in whatever the first draft assumed.
Where AI helps most
Assistants are good at the cases people skip when they are busy:
- Boundaries: empty, zero, one, the maximum, one over the maximum.
- Bad input: wrong types, missing fields, very long or non-ASCII text.
- Timing and failure: slow responses, timeouts, retries, a service that is down.
- State: doing the same thing twice, in a different order, or as a different user.
- Combinations: two filters at once, or a feature used with a setting nobody mentioned.
They are much weaker on your business rules. Anything that depends on how your product actually behaves needs to come from the requirement or from you.
Choose before you automate
You will usually get more cases than you need. Go through the list and cut, merge and add:
- cut cases that test the framework rather than your feature
- merge cases that differ only in a detail that cannot matter
- add the cases only you know about: the bug from last quarter, the customer who always does it differently
That pruned list is your specification. Only now generate the automation, one small group at a time, against your list rather than a fresh prompt.
Check what comes back
Generated tests need the same check as generated code. Read each assertion and ask what wrong behaviour would make it fail. Then break the code on purpose and watch each test go red at least once. A test you have never seen fail is a test you are trusting, not checking.
The free Testing with AI guide has the prompts for this, ready to copy, plus notes on Playwright, Cypress, pytest and API tests.