AI-Assisted QA
AI-assisted QA means using an AI model, usually a large language model (LLM), as a helper in your own testing work: drafting test cases from a user story, suggesting edge cases, listing questions about an unclear requirement or structuring a bug report. The product under test need not contain any AI. This is the other direction from the rest of this module, where the AI system was the test object.
Example: an AI test case generator turns a user story about discount codes into six tidy test cases in seconds. One expects an error message the requirement never mentions, one is too vague to execute, and the rule "one use per customer" has no test at all. Your review decides what to keep, what to ask the product owner and what to add.
Why it matters
A language model produces fluent, plausible text. It has not seen your product, does not know your users or risks, and can state an invented detail as confidently as a correct one: the hallucinations you tested for earlier in this module, which the NIST Generative AI Profile (NIST AI 600-1) calls confabulation. A test case with an invented expected result is worse than none: it can pass against wrong behaviour or fail against correct behaviour.
There is a second risk: whatever you paste into an online AI tool leaves your machine, including a customer’s phone number in a bug note or an access token in a request log. With review and clean input, AI saves real drafting time; without them, it adds defects and data leaks.
An assistant for drafts, not a replacement for judgement
Think of an AI tool as a fast, well-read colleague who has never used your product and cannot be held responsible for anything. It is not a test oracle: expected results come from the test basis (requirements, acceptance criteria, designs) or from the product owner, never from the model’s guess. The ISTQB syllabus on testing with generative AI (CT-GenAI) treats this use of AI as a subject of its own, and the fundamentals stay the same: you choose what to test by risk, apply test design techniques, observe the real product and own the result.
- Good uses: test ideas and edge cases, first drafts of test cases from a clear story, ambiguity questions for a requirements review, structuring a bug report from your own notes, explaining an unfamiliar error message.
- Poor uses: deciding scope or priority, writing expected results the test basis does not state, setting severity without knowing the business impact, replacing exploration of the real product.
- Not acceptable: reporting a defect you did not reproduce yourself, or recommending a release because an AI summary says the results look fine.
Privacy: decide what you paste before you paste it
Most AI tools run as an online service: your input is sent to the provider to produce the answer. Before you paste anything, check your organisation’s policy on which AI tools are approved and which data may go into them. Personal data in a test artefact is still personal data; in Saudi Arabia, for example, its processing is governed by the Personal Data Protection Law (PDPL). The model needs the structure of the problem, not the real values, so clean the input first.
- Personal data (names, phone numbers, e-mail addresses, national IDs, card numbers): replace it with synthetic values from a test data generator.
- Secrets (passwords, API keys, access tokens, session cookies,
Authorizationheaders): write<redacted>instead. - Internal details (hostnames, IP addresses, customer names, unreleased features): leave them out unless the policy allows them.
- A real secret pasted by mistake must be reported to its owner and revoked; deleting the message is not enough.
Before cleaning: do not paste this
POST https://orders.int.example-shop.local/v2/checkout
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI0NDIxIn0.Xk2...
{"customer": "Sara Al-Harbi", "phone": "+966 55 012 3456", "code": "SAVE20"}
-> 500 Internal Server Error
After cleaning: enough for the AI to help
POST /v2/checkout
Authorization: Bearer <redacted>
{"customer": "Test User 01", "phone": "+966 50 000 0001", "code": "SAVE20"}
-> 500 Internal Server ErrorVerify every draft before you use it
Treat AI output like any work product that has not been reviewed. Fluent wording is not evidence of correctness, and the same request can return a different draft next time, so review the version you actually use, in a fixed order.
- Trace: link each item to the test basis. An item you cannot trace is a gap in the requirement (a question for the product owner) or an invention (delete it).
- Check the facts: limits, error messages, status codes, field names and standards, against the requirement, the API contract or the product.
- Check that it can be executed: concrete data and an observable expected result. "Check that the feature works correctly" is not a test.
- Find what is missing: apply your own techniques (partitions, both sides of each boundary, decision rules, risks) and remove duplicates from the same partition.
- Generated code: run it, see each check fail when it should, and read every selector and assertion. Asking the same tool whether its output is correct is not verification.
- Record: mark the artefact as AI-assisted and name the reviewer.
- 1Prepare the inputTest basis, limits and roles; no personal data, secrets or internal names
Gate: only what the policy allows
- 2Draft with AITest ideas, test cases, review questions or bug wording: a draft, not a resultAI tool
- 3Trace and check the factsEach item against the test basis; limits and messages against the requirement or the product
Branch: Invented or unsupported: correct it, ask the product owner or discard it
- 4Add what is missingYour own partitions, boundaries, rules and risks
- 5Use it with a named reviewerIn the suite, the bug report or the review, marked AI-assisted
Throughout steps 3–4 The tester’s review
An illustrative workflow from this lesson; no standard prescribes these exact steps.
Worked example: reviewing an AI draft for a discount code
Acceptance criteria of a checkout story: (1) SAVE20 gives 20% off orders of 200.00 SAR or more; (2) each customer can use a code once; (3) an expired code is rejected with the message "This code has expired". SAVE20 is valid until 23:59 on 31 December 2026, Riyadh time. An AI tool returned the draft below; review it item by item.
- TC-01: keep; it traces to criterion 1, and 250.00 minus 20% is 200.00.
- TC-02: keep the input and expect no discount, but the message is invented: criterion 1 does not say whether the code is rejected under 200.00 SAR or what the customer sees. Ask the product owner.
- TC-03: keep, with concrete data:
SAVE20at 00:00 on 1 January 2027, Riyadh time, in a test environment whose clock you can set. - TC-04: the draft assumed codes are not case-sensitive; the requirement is silent, so this is a question.
- TC-05 and TC-06: discard. TC-05 has no data and no expected result; TC-06 is in the same partition as TC-01.
- Add: 199.99 SAR (no discount), 200.00 SAR (total 160.00), a second use by the same customer (rejected), a first use by another customer (accepted) and
SAVE20at 23:59 on 31 December (accepted). The draft missed criterion 2 entirely. - Result: two kept, two questions, two discarded, five added. The AI saved typing; the coverage of the rules came from the review.
TC-01 Apply SAVE20 to an order of 250.00 SAR
Expected: total 200.00 SAR
TC-02 Apply SAVE20 to an order of 150.00 SAR
Expected: message "Minimum order is 200 SAR"
TC-03 Apply an expired code
Expected: message "This code has expired"
TC-04 Apply "save20" in lower case
Expected: code accepted
TC-05 Apply SAVE20 and check that the discount works correctly
TC-06 Apply SAVE20 to an order of 300.00 SAR
Expected: 20% discount appliedUsing the Mutqan AI tools responsibly
The Mutqan AI QA tools cover test generation, requirement analysis, bug analysis and test optimisation: for example test cases from a user story, ambiguity detection, bug descriptions and severity suggestions. They need a free account and count against a daily allowance. Their privacy note says that your input is sent to the Mutqan AI service and that prompts and results are not stored; the input still leaves your device, so the rules on what you paste apply in full.
- Where a technique has fixed rules, prefer a non-AI Mutqan tool such as boundary value analysis: it runs in your browser and needs no sign-in.
- Do your own analysis first, then use the AI tool as a second opinion and compare the two.
- Give precise input: the story, its acceptance criteria, field limits and user roles.
- Treat a suggested severity or priority as an input to triage, not as the decision.
Try it: AI Test Case Generator Try it: AI Requirement Ambiguity Detector Try it: AI Bug Description Generator Try it: User Story → Test Cases
Common mistakes
- Copying AI-generated test cases into the suite without tracing each one to the test basis.
- Treating expected results, error messages or limits written by the AI as facts.
- Pasting real customer data, credentials or confidential code into an AI tool, or using a tool your organisation has not approved.
- Accepting an AI severity or priority suggestion as the decision.
- Assuming the draft is complete instead of applying your own techniques to find what it missed.
- Asking the same tool to check its own output and counting its agreement as verification.
The QA perspective
On a real team, agree on the ground rules first: which AI tools are approved, which data may go into them and how AI-assisted work is marked. If nobody has decided, raise it with your lead. Then use AI where it pays off: ambiguity questions during refinement, first drafts of test cases, edge-case ideas before an exploratory session, bug report wording after you have reproduced the failure.
The tester who adopts an AI draft owns it as if they had written it. Record in the test case or the ticket that it was AI-assisted, with which tool and who reviewed it, and take any new point it raises to the product owner as a question, not as a finding. The NIST Generative AI Profile lists over-reliance on generative AI among its risks (under human-AI configuration), so keep practising the techniques: if you cannot design the tests without the tool, you cannot judge its output.
Practice exercise
Review an AI draft and clean a bug note
A colleague used an AI tool to draft test cases for a ticket booking rule and wants to paste a production bug note into an AI tool for help with the report. The material is below; the customer data is fictional, but treat it as real.
Review the draft as this lesson describes, then decide what must change in the bug note before it may be pasted anywhere.
Requirement: A customer can book 1 to 6 tickets per order.
Booking closes 2 hours before the event starts.
AI draft:
TC-1 Book 3 tickets
Expected: booking confirmed
TC-2 Book 0 tickets
Expected: message "Select at least 1 ticket"
TC-3 Book 7 tickets
Expected: message "Maximum 6 tickets per order"
TC-4 Book 10 tickets
Expected: message "Maximum 6 tickets per order"
TC-5 Book 1 hour before the event starts
Expected: booking rejected
TC-6 Book tickets and check that everything works
Bug note:
Customer: Noura Al-Qahtani, noura.q@example.com, +966 55 987 6543
POST https://booking.int.tickets.local/v2/orders
Cookie: session=7f3a9c2e41b84d0f
Response: 500 Internal Server Error at 19:42 on 14 October- Trace each draft case to the requirement and mark it keep, correct, question or discard, with a reason.
- Find the missing cases with equivalence partitioning and boundary value analysis.
- List what must not be pasted from the bug note and write a cleaned version.
- Write what you will record about the AI assistance.
Show the model answer
Keep TC-1 (a typical valid value) and TC-5 (with concrete times). TC-2 and TC-3: keep the inputs, the invalid neighbours of the boundaries, but the messages are invented; expect "rejected" and ask the product owner for the wording. Discard TC-4 (same partition as TC-3) and TC-6 (no data, no expected result).
Missing: 1 and 6 tickets (accepted), the valid boundary values the draft never tested. For the booking window, with a one-minute step: 2 hours 1 minute before the start (accepted), exactly 2 hours (an open question for the product owner) and 1 hour 59 minutes (rejected). Also ask which time zone defines the start.
Bug note: remove the name, e-mail address and phone number (personal data), the session cookie (a credential; ask for that session to be invalidated) and the internal hostname, and keep the method, path, status and time. A cleaned note: "A customer received 500 Internal Server Error at 19:42 on 14 October when booking tickets; POST /v2/orders; session cookie redacted." Paste it only into a tool your organisation approves; better still, reproduce the failure with a test account first.
Record: mark the final cases as AI-assisted, name the tool and yourself as the reviewer, and link the open questions to the cases.
Frequently asked questions
Will AI replace testers?
The tools change how some tasks are done, mostly drafting and summarising. They do not know your product, users or risks, cannot reproduce a failure on the real system and cannot be held accountable for a release decision. The work that remains (deciding what matters, judging the output and owning the result) is the core of testing.
Is it safe to paste a stack trace or a log into an AI tool?
Only into a tool your organisation approves, and only after you remove personal data, tokens, cookies, internal hostnames and anything your policy classifies as confidential. Stack traces and logs often contain user IDs, file paths and query parameters, so read the whole text before you paste it.
Why use a non-AI test design tool when an AI tool exists?
A non-AI tool such as the boundary value analysis tool applies a defined technique, runs in your browser with no sign-in and sends nothing to a server. Use it where the technique has fixed rules. Use an AI tool where open-ended help pays off, such as finding ambiguities or brainstorming edge cases, and review what it returns.
Should I say that a test case or bug report was written with AI help?
Yes. Record it the way your team agrees, together with the name of the reviewer. It tells the next reader how the artefact was produced and who checked it, and it shows the team where AI assistance saves time and where it causes rework.
References
- Certified Tester Specialist Level – Testing with Generative AI (CT-GenAI)ISTQB's syllabus on using large language models across the test process — the other direction from testing AI systems.
- Artificial Intelligence Risk Management Framework: Generative Artificial Intelligence Profile (NIST AI 600-1)The generative-AI profile of the AI RMF: risks specific to generative models, such as confabulation and information integrity, and suggested actions to manage them.
- Personal Data Protection Law (English translation)The Saudi law governing personal data — why test environments should use synthetic data rather than copies of real customer records.
- ISTQB Certified Tester Foundation Level (CTFL) v4.0The foundation syllabus of software testing: test levels and types, test design techniques, test management and tools.
Practise with Mutqan tools
Turn a user story into professional, structured test cases (ID, title, type, priority, preconditions, data, steps, expected result) with Mutqan AI.
Detect ambiguous, vague or contradictory statements in requirements and get clarifying questions from Mutqan AI.
Turn rough notes into a complete bug report: steps to reproduce, expected vs actual, environment, severity and attachments checklist.
Convert a user story (As a / I want / So that) into structured test cases using templates and heuristics.
Perform full boundary value analysis (2-value and 3-value BVA) with equivalence classes and expected results.
One-stop factory for synthetic test data: users, customers, companies, addresses, numbers, dates and strings in JSON, CSV, SQL or XML.
Go deeper
- LLM Testing: How to Test LLM ApplicationsThe other direction: using AI to help QA
- How to Write Test CasesFrom a user story to test cases
- How to Review RequirementsHow Mutqan’s AI requirement tools help — and where they stop
- How to Write a Bug ReportHow to write a bug report developers can act on: the fields that matter, a copy-ready template, a worked example, severity vs priority, and mistakes to avoid.
Your progress on this topic
Not started
Mark the topic complete when you have studied it and done the exercise.
Sign in to track your progress
Mark topics complete, continue where you left off and unlock specialisation exams.