Browse the Knowledge Hub56 resources
Test cases
Insurance claim test cases, where the date decides the settlement
Twenty eight cases covering coverage evaluated at the date of loss, waiting periods, reporting deadlines, deductibles and sub limits, exclusions and riders, duplicate claims, document handling, handler concurrency and settlement reconciliation.
All 28 test cases, ready to copy
Free to use and adapt, no sign-up. Download as CSV or Markdown, or copy it straight into your own tooling.
Last updated
28 worked examples
Submit a valid claim against an active policy
TypeFunctionalPriorityHigh- Test data
- Active policy, loss date inside the term, all mandatory fields and documents supplied
- Expected result
- Claim is created with a unique reference, status is set to submitted, the acknowledgement timestamp is recorded and the claimant receives confirmation.
Evaluate coverage at the date of loss, not the date of submission
TypeBoundaryPriorityHigh- Test data
- Policy lapsed last month. Loss occurred while it was active. Claim filed today
- Expected result
- Claim is assessed against the policy as it stood on the date of loss and is admitted. Assessing against current state would wrongly decline a valid claim.
Decline a loss that occurred outside the policy term
TypeNegativePriorityHigh- Test data
- Loss dated one day before inception, then one day after expiry
- Expected result
- Both declined with the reason naming the policy term and the loss date. The boundary is inclusive of the inception and expiry dates themselves.
Reject a loss date in the future
TypeNegativePriorityHigh- Test data
- Loss date set to tomorrow, and to today in a timezone ahead of the policy timezone
- Expected result
- Refused. The comparison uses the policy timezone rather than the device clock, so a claimant in a later timezone cannot post a future loss.
Apply the waiting period from the correct start date
TypeBoundaryPriorityHigh- Test data
- Thirty day waiting period. Loss on day 29, day 30 and day 31 after inception
- Expected result
- Rule is applied consistently and the inclusive or exclusive treatment of the final day matches the policy wording exactly.
Honour the reporting deadline for late notification
TypeBoundaryPriorityHigh- Test data
- Policy requires notification within thirty days. Submit on day 30 and on day 31
- Expected result
- Day 30 is accepted. Day 31 is flagged for review rather than silently accepted or silently declined, and the reason is recorded.
Detect a duplicate claim for the same loss event
TypeNegativePriorityHigh- Test data
- Submit twice with the same policy, loss date and incident description
- Expected result
- Second submission is linked to the first as a potential duplicate rather than opening a parallel claim that could settle separately.
Prevent a double submission from a repeated request
TypeSecurityPriorityHigh- Test data
- Replay the submission request, and press submit repeatedly before the response returns
- Expected result
- Exactly one claim is created. The server refuses the repeat on an idempotency key rather than relying on the disabled button.
Calculate the deductible against the assessed amount
TypeFunctionalPriorityHigh- Test data
- Deductible 500. Assessed loss 400, then 500, then 501
- Expected result
- Below the deductible settles at zero with a clear explanation, at the deductible settles at zero, and above it settles at the excess only.
Apply the sum insured ceiling
TypeBoundaryPriorityHigh- Test data
- Sum insured 100,000. Assessed loss 100,001
- Expected result
- Settlement is capped at the sum insured. The excess is shown as not covered rather than being quietly truncated with no explanation.
Reduce the remaining sum insured after a prior claim
TypeStatePriorityHigh- Test data
- Sum insured 100,000 with 70,000 already settled this term. New claim for 40,000
- Expected result
- Only 30,000 remains available. The balance is calculated per policy term and resets correctly at renewal.
Apply sub limits and co-payment before the overall ceiling
TypeFunctionalPriorityHigh- Test data
- Category sub limit 20,000 with 10 per cent co-payment on a 30,000 claim
- Expected result
- Sub limit applies first, then the co-payment on the admitted amount, and the order of operations matches the policy wording rather than the convenient one.
Decline a loss matching a policy exclusion
TypeNegativePriorityHigh- Test data
- A cause of loss listed as excluded, and one only excluded when a rider is absent
- Expected result
- Correct decision in both cases. The decline quotes the specific exclusion clause, and the rider is checked before the exclusion is applied.
Include cover added by a rider or endorsement mid term
TypeStatePriorityHigh- Test data
- Rider added after inception. Loss before the rider date, then after it
- Expected result
- Rider applies only from its own effective date, not from policy inception, and the earlier loss is assessed without it.
Upload supporting documents of accepted types and sizes
TypeFunctionalPriorityHigh- Test data
- A permitted format at the maximum size, one byte over, and a disallowed executable renamed to a permitted extension
- Expected result
- Accepted, refused on size, and refused on content inspection. Extension alone is never trusted to determine file type.
Preserve uploaded documents when validation fails elsewhere
TypeStatePriorityHigh- Test data
- Attach three documents, then submit with a mandatory field blank
- Expected result
- Attachments survive the failed submission. Losing them is the single most common reason a claimant abandons the process.
Resume a partially completed claim
TypeStatePriorityMedium- Test data
- Save a draft, close the browser, reopen from another device
- Expected result
- Every entered value and attachment is restored, and the draft carries no claim reference until it is actually submitted.
Refuse access to a claim belonging to another policyholder
TypeSecurityPriorityHigh- Test data
- Authenticate as one claimant and request a claim reference belonging to another
- Expected result
- Refused with an authorisation error. Sequential or guessable claim references must not expose records, and the response reveals nothing about existence.
Restrict document download to the owning claimant and handler
TypeSecurityPriorityHigh- Test data
- Request a stored document URL while signed out, and while signed in as a different claimant
- Expected result
- Both refused. Document links are authorised on every request and are time limited rather than permanently public once known.
Route the claim to the correct handling queue
TypeFunctionalPriorityMedium- Test data
- A low value claim inside the auto adjudication threshold, and one above it
- Expected result
- Low value is routed for automated assessment, high value to a human handler, and the threshold is applied to the assessed amount rather than the claimed amount.
Move the claim through valid status transitions only
TypeStatePriorityHigh- Test data
- Attempt to move a settled claim back to submitted, and an unassessed claim straight to approved
- Expected result
- Both refused. The status machine allows only defined transitions and records who made each one and when.
Request further information and pause the assessment clock
TypeStatePriorityMedium- Test data
- Handler raises a query, claimant responds four days later
- Expected result
- Regulatory clock pauses and resumes according to the documented rule, and the total elapsed time reported matches the calculation exactly.
Prevent two handlers from assessing the same claim concurrently
TypeBoundaryPriorityHigh- Test data
- Two handlers open the same claim and save conflicting decisions at the same instant
- Expected result
- One save succeeds and the other is refused with a conflict, showing the newer record. A silent last write wins would overwrite a decision.
Withdraw a claim before settlement
TypeStatePriorityMedium- Test data
- Withdraw a submitted claim, then attempt to withdraw one already paid
- Expected result
- First succeeds and releases any reserved amount. Second is refused rather than appearing to succeed while the payment stands.
Validate bank details before releasing a settlement
TypeNegativePriorityHigh- Test data
- Account number failing checksum, valid details for a closed account, and a name mismatch against the policyholder
- Expected result
- Each is refused with a distinct reason before any payment instruction is issued, and no partial payment state is left behind.
Verify the settlement amount that reaches payment and reporting
TypeStatePriorityHigh- Test data
- Compare the assessed figure on screen, the payment instruction, the accounting entry and the claimant letter
- Expected result
- All four agree to the minor unit. A deductible or co-payment applied in one place and not another is the classic source of disputed settlements.
Retain a complete and immutable audit trail
TypeSecurityPriorityHigh- Test data
- One assessment, one amendment and one decline across two handlers
- Expected result
- Every action records actor, timestamp, previous value and new value. Entries cannot be edited or removed, and the trail survives claim closure.
Complete the submission with a keyboard and a screen reader
TypeAccessibilityPriorityMedium- Test data
- Keyboard only navigation through the date of loss, the upload control and the declaration
- Expected result
- Every control is reachable and labelled, upload progress and errors are announced, and the declaration cannot be agreed without being reachable.
What goes in each field
ID
RequiredStable identifier, prefixed by module.
Test case
RequiredWhat is being verified, in one line.
Type
Functional, negative, boundary, security, state, performance, accessibility or compatibility. Use it to check coverage is spread rather than clustered on the happy path.
Priority
Risk based, weighted by settlement impact. Anything that can pay a claim that should be declined, decline one that should be paid, or settle the wrong amount is High. Regulatory timers are High for the same reason.
Test data
The specific values, including the invalid and boundary ones.
Expected result
RequiredThe precise observable outcome, including message text where the wording itself is the requirement.
Assess the policy as it stood then
A claim is judged against a policy at a moment in the past. These four conditions are where the wrong moment gets used.
Claim on a lapsed policy
Loss occurred while the policy was active, claim filed after it lapsed. Assessing against current state declines a valid claim, and the claimant is right to dispute it.
Walk the day boundaries
Waiting periods and reporting deadlines fail on the final day. Test day 29, 30 and 31 against the policy wording rather than against the implementation.
Order the deductions deliberately
Sub limit, co-payment and overall ceiling produce different settlements depending on the order applied. The order in the wording is the only correct one.
Follow the amount to the letter
Compare the assessed figure on screen, the payment instruction, the accounting entry and the claimant letter. All four must agree to the minor unit.
Why claim defects reach settlement
Almost every wrong claim decision comes from evaluating the policy at the wrong moment. Coverage, sum insured, riders, exclusions and the deductible all belong to the policy as it stood on the date of loss, not as it stands when the claim is keyed in. A system that reads current state will decline valid claims on lapsed policies and will apply a rider to a loss that predates it. This is testable in a single case and it is skipped in most published sets, because the happy path submits a claim on an active policy the same week.
The arithmetic is the second problem, and it is an ordering problem rather than a calculation one. A category sub limit, a co-payment percentage and an overall sum insured ceiling produce three different settlements depending on the sequence in which they are applied. The sequence is stated in the policy wording, and the test has to assert against the wording rather than against whatever the code happens to do. The same applies to the remaining balance: a sum insured is consumed across a term by earlier claims and resets at renewal, and getting that wrong overpays or underpays every subsequent claim.
Document handling is where claimants abandon the process. Attachments lost because an unrelated field failed validation, uploads accepted on file extension alone, and stored document URLs that stay accessible to anyone who learns them are all common and all avoidable. A claim document is medical or financial evidence, so authorisation belongs on every request for it rather than on the page that linked to it.
Finally, the regulatory clock. Acknowledgement and decision timers are audited, and they usually pause while further information is awaited. If the pause and resume rule is implemented loosely, the elapsed time reported to a regulator does not match the elapsed time that actually passed, and that is a compliance finding rather than a bug. Two handlers saving conflicting assessments at the same instant belongs in the same category: a silent last write wins quietly overwrites a decision that someone signed.
Suggest an improvementTesting a claims or policy platform?
QAble tests claim handling end to end, including coverage at the date of loss, benefit arithmetic, document security and reconciliation between assessment, payment and reporting.
Insurance software testing servicesMore test case sets
View allTest cases for a login page
Test cases25 cases across functional, negative, boundary, security, session and accessibility paths, including account enumeration and lockout.Test cases for a registration form
Test cases28 cases covering validation, duplicate accounts, email verification, password rules and the enumeration leak most signup forms ship with.Test cases for search functionality
Test cases28 cases across relevance, partial and fuzzy matching, filters, pagination, empty states, injection attempts and performance under load.Test cases for a shopping cart
Test cases27 cases on quantity limits, price recalculation, stock changes, coupon stacking, guest to account merge and cart persistence.Test cases for checkout and payment
Test cases30 cases including 3D Secure, declines, timeouts, duplicate charges, idempotency, refunds and partial captures.Test cases for file upload
Test cases28 cases on size and type limits, spoofed content types, malicious filenames, progress, resume, virus scanning and storage limits.Test cases for forgot password
Test cases26 cases on reset token expiry, single use enforcement, session invalidation and the enumeration and rate limit gaps that are routine here.Test cases for OTP verification
Test cases26 cases on expiry, resend throttling, attempt limits, code reuse, delivery failure and the brute force window teams forget to close.Test cases for user roles and permissions
Test cases26 cases on horizontal and vertical privilege checks, direct object access, role changes mid-session and permission inheritance.Test cases for form validation
Test cases27 rules-based cases on required fields, length and numeric boundaries, client and server parity, hidden field tampering and error accessibility.Test cases for a date picker
Test cases26 cases on timezone shifts, ambiguous day and month order, impossible dates, min and max limits, leap years and keyboard operation.Test cases for pagination
Test cases24 cases on ordering stability, records changing mid-session, page size caps, deep offset cost, permission-filtered totals and state restore.Test cases for push notifications
Test cases26 cases on app states, deep link routing, token release on sign out, lock screen privacy, preferences, provider failures and platform differences.Test cases for reports and data export
Test cases25 cases on permission filtering in the file, spreadsheet formula injection, encoding, typed numbers and dates, row limits and audit logging.Test cases for a chatbot
Test cases28 cases on paraphrased intents, context, fallback loops, human handoff, policy grounding, prompt injection and data scoping.Test cases for net banking transactions
Test cases28 cases on duplicate debits from a retried request, concurrent transfers against one balance, daily limits across channels, beneficiary cooling periods, second factor binding and reconciliation.Test cases for wallet and UPI payments
Test cases28 cases on payments that time out with no response, idempotency on retry, racing balances, caps across devices, collect request fraud, mandates and refunds.Test cases for patient records in an EHR
Test cases28 cases on duplicate detection and merge, wrong patient entry, units of measure, allergy and interaction alerting, break glass access and audit of reads.Test cases for CRM lead management
Test cases28 cases on duplicate leads under concurrency, routing and the unrouted fallback, round robin races, territory visibility, conversion and bulk import.Test cases for an ERP purchase order
Test cases28 cases on approval thresholds, amendments that must reset approval, budget commitment races, over receipt tolerance, three-way match and duplicate invoices.Test cases for OTT video playback
Test cases28 cases on bitrate recovery after a dip, DRM renewal mid stream, concurrent stream limits and leaked slots, resume conflicts, ad cue points and offline expiry.Test cases for game level progression
Test cases28 cases on save corruption during a crash write, cloud save conflicts, offline queue replay, unlock gating, currency exploits and purchase restore.Test cases for a REST API
Test cases28 cases on status code correctness, cross tenant resource access, mass assignment, idempotent retries, cursor pagination, rate limits and contract drift.Test cases for SSO and social login
Test cases28 cases on linking an account on an unverified email, state and code replay, redirect allow lists, token signature and issuer, deprovisioning and session rotation.Test cases for subscription and billing
Test cases28 cases on mid cycle proration, duplicate and out of order webhooks, renewal double charges, dunning and grace, trials, coupons, metered usage and tax.Test cases for data tables, filters and sorting
Test cases28 cases on unstable sorts across pages, filters that must reset pagination, selection surviving a filter change, bulk action scope and export fidelity.Test cases for session timeout and concurrent login
Test cases28 cases on tokens that survive sign out, refresh token reuse, idle against absolute lifetime, multi tab expiry, session limits and remote revocation.Test cases for a multi step form wizard
Test cases28 cases on values lost to back navigation, refresh and session expiry, step skipping, server side revalidation, duplicate submission and conditional branches.Test cases for email verification
Test cases28 cases on token reuse and expiry, invalidating earlier links, account enumeration, header injection, safe address change and mail scanner prefetching.Test cases for dashboards and analytics widgets
Test cases28 cases on reconciling against source rows, widgets that disagree, timezone aggregation, zero baselines, no data shown as zero and permission leaks in aggregates.Test cases for booking and reservation
Test cases28 cases on concurrent bookings for the last slot, inventory holds that leak, payment without a booking, cancellation boundaries and channel sync.Test cases for mobile app install and update
Test cases28 cases on migration chains across skipped versions, crashes during post upgrade migration, forced update lockouts, deep links and clean reinstall.Test cases for accessibility (WCAG 2.2 AA)
Test cases28 cases on keyboard only completion, focus management, live region announcements, contrast, reflow at 320 pixels, target size and screen reader verification.Test cases for performance and load
Test cases28 cases on spikes with no ramp, recovery after peak, soak and leak detection, pool exhaustion, cold caches, retry storms and data correctness under load.Test cases for the OWASP Top 10
Test cases28 cases on broken access control, mass assignment, injection across every input surface, credential stuffing, session invalidation, SSRF and exposed secrets.Test cases for cross browser compatibility
Test cases28 cases on storage that throws in private mode, blocked third party cookies, engine date parsing, mobile viewport units, in app browsers and ad blockers.Test cases for database and data integrity
Test cases28 cases on uniqueness under concurrency, lost updates, counter races, orphaned rows, migration and backfill safety, replica lag and verified restores.Test cases for localisation and multi language support
Test cases28 cases on text expansion, concatenated sentences, plural rules, locale date parsing, decimal separators, right to left layout, collation and encoding.Want settlement logic proven, not assumed?
QAble covers functional, boundary and security paths with ISTQB-certified engineers. Start with a free QA audit of your platform.