Free tools / Health Cloud test cases

What should a Salesforce Health Cloud test suite cover?

What should a Salesforce Health Cloud test suite cover?

What should a Salesforce Health Cloud test suite cover?

Start with anything that runs on a legal clock or touches patient safety: prior authorization, benefits verification, care program eligibility and who can see which records. For life sciences, add samples, payments to HCPs and adverse events. Below are 47 test cases mapped to real Health Cloud (now Agentforce Health) objects, each with test data and a pass condition you check in the data, not on the screen.

47test cases with given, when, then
30P1 cases to run before every release
10processes, mapped to real objects
11cases tied to a rule, deadline or event

filter // process

Showing 47 of 47
IDScenarioGivenWhenThen (check the data)
H-001
P1
Duplicate patient caught at intakePatient and member records · UI + SOQLGivenPerson account Maria Lopez, DOB 1984-03-02, MRN 0055102 existsWhenFront desk registers “María López”, same DOB, new emailThenDuplicate rule warns or blocks; SOQL on MRN 0055102 returns exactly 1 account
H-002
P2
Caregiver relationship shows from both sidesPatient and member records · UIGivenPatient Ahmed Khan and contact Sara KhanWhenSara is added as Ahmed’s caregiverThenRelationship and reciprocal role show on both records; Sara’s portal access follows your consent rule, not the relationship alone
H-003
P1
Deceased patients drop out of outreachPatient and member records · SOQLGivenPatient marked deceased on 2026-10-30, still a member of the flu-shot campaignWhenOutreach batch runsThenNo email, SMS or task created for the patient
H-004
P2
A minor needs the guardian pathPatient and member records · UIGivenPatient aged 16 with a guardian on fileWhenPatient tries to self-register on the portalThenRouted to guardian consent; no portal user for the minor until consent is recorded
H-005
P1
ADT^A08 updates, never duplicatesEHR feeds (HL7 v2, FHIR) · IntegrationGivenEHR sends ADT^A08 with a new address for MRN 0055102WhenThe inbound HL7 integration processes itThenAddress updated on the existing account; account count for the MRN stays 1; message logged as processed
H-006
P2
ADT^A40 merge keeps clinical historyEHR feeds (HL7 v2, FHIR) · IntegrationGivenMRNs 0055102 and 0055877 merged in the EHR; 0055102 survivesWhenADT^A40 arrivesThenConditions, encounters and care requests from 0055877 now sit under the survivor; no orphaned child records
H-007
P2
Out-of-order messagesEHR feeds (HL7 v2, FHIR) · IntegrationGivenTwo ADT^A08 updates sent at 10:02 and 10:05 arrive in reverse orderWhenBoth are processedThenThe 10:05 values win; the older message never overwrites newer data
H-008
P1
Eligible patient enrollsCare programs · API + SOQLGivenProgram “Diabetes Management” requires HbA1c ≥ 7.0%; patient result 7.4%WhenEnrollment through the Care Program Enrollments API or the UIThenOne CareProgramEnrollee, status Active, linked to the right CareProgram and enrollee product
H-009
P1
Ineligible patient is refusedCare programs · APIGivenSame program; patient HbA1c 6.4%WhenEnrollment is attemptedThenRejected with a readable reason; zero CareProgramEnrollee records created
H-010
P2
The boundary value enrollsCare programs · APIGivenPatient HbA1c exactly 7.0%WhenEnrollment is attemptedThenEnrolled. A rule written as > instead of ≥ fails here
H-011
P2
No double enrollmentCare programs · SOQLGivenPatient already Active in the programWhenA second enrollment is submittedThenBlocked; Active enrollees for this patient and program = 1
H-012
P2
Disenrollment closes the loopCare programs · UI + SOQLGivenActive enrollee with 3 open outreach tasksWhenCoordinator ends the enrollment todayThenEnrollee inactive; the 3 tasks closed or reassigned; patient left out of the next outreach run
H-013
P1
Active coverage returns benefitsBenefits verification · IntegrationGivenMemberPlan active 2026-01-01 to 2026-12-31; service date 2026-11-20WhenBenefits verification runs against the connected serviceThenCareBenefitVerifyRequest completes; CoverageBenefit holds copay, deductible and out-of-pocket values from the response
H-014
P1
Terminated coverage is flaggedBenefits verification · IntegrationGivenMemberPlan ended 2026-09-30; service date 2026-11-20WhenBenefits verification runsThenNo active coverage shown; no authorization request created automatically
H-015
P1
Payer timeout leaves nothing half-writtenBenefits verification · IntegrationCareBnftVrfyRqstStsChgEventGivenStub service set to time out after 30 secondsWhenBenefits verification runsThenRequest in an error state, retry message for the user, zero partial CoverageBenefit rows; status-change event published
H-016
P2
Primary and secondary plansBenefits verification · SOQLGivenTwo MemberPlans: employer plan (primary), spouse’s plan (secondary)WhenBenefits verification runsThenPrimary checked first; each result stored against its own plan
H-017
P2
Benefit limit used upBenefits verification · UIGivenPhysical therapy limit 20 visits a year, 20 usedWhenScheduler books visit 21ThenWarning before booking; remaining visits show 0, not a negative number
H-018
P1
Expedited request gets a 72-hour clockUtilization management · UI + SOQLCMS-0057-FGivenExpedited CareRequest received Monday 2026-11-09 09:00 ET for a Medicare Advantage memberWhenRequest is savedThenDecision due 2026-11-12 09:00 ET, stored on the record and shown in the review queue
H-019
P1
Standard request counts calendar daysUtilization management · UI + SOQLCMS-0057-FGivenStandard CareRequest received Friday 2026-11-20 16:30WhenRequest is savedThenDecision due Friday 2026-11-27 16:30. Thanksgiving and the weekend count; a business-hours clock fails this test
H-020
P1
Clock across the daylight saving changeUtilization management · UI + SOQLCMS-0057-FGivenExpedited request received 2026-10-31 12:00 ET; clocks fall back on 2026-11-01WhenRequest is savedThenDue 2026-11-03 11:00 ET: 72 elapsed hours, not 72 wall-clock hours
H-021
P1
Partial approval stored per lineUtilization management · UI + SOQLGivenCareRequest with CareRequestItems CPT 97110 ×12, 97140 ×6, 97530 ×6 and CareDiagnosis ICD-10 M54.50WhenReviewer approves 97110 and 97140, denies 97530ThenEach CareRequestItem holds its own decision; header shows partial approval; denial notice lists only 97530
H-022
P1
No denial without a specific reasonUtilization management · UICMS-0057-FGivenReviewer opens a pended requestWhenReviewer denies with the reason blank or only “Other”ThenSave blocked until a specific reason is recorded
H-023
P2
Drug request details persistUtilization management · UI + SOQLGivenCareRequestDrug: NDC 00002-7510-01, 5 mg, once weeklyWhenRequest submitted and approvedThenNDC, strength, frequency and decision saved on the drug line, not only in notes
H-024
P2
Payer asks for more informationUtilization management · IntegrationGivenPended request; payer sends a TrackedCommunication asking for therapy notesWhenProvider uploads two documentsThenBoth linked as CareRequestSupportingCntnt; request back in the reviewer queue; sender and time visible
H-025
P1
Behavioral health requests stay restrictedUtilization management · SecurityGivenUM nurse on the medical queue; request assigned to the behavioral health queueWhenNurse searches for the member and opens the request by URLThenNo access: search returns nothing, the URL shows insufficient privileges
H-026
P2
Appeal links to the originalUtilization management · UI + SOQLGivenRequest denied on 2026-11-12WhenProvider files an appealThenNew CareRequest of type appeal linked to the original; the original decision and reason unchanged
H-027
P1
Resubmission is idempotentUtilization management · APIGivenProvider system posts the same prior authorization twice with one external IDWhenBoth calls are processedThenOne CareRequest; the second call returns the existing record or a duplicate error
H-028
P1
PHQ-9 total and severityCare plans and assessments · UI + SOQLGivenPHQ-9 answers totalling 15, item 9 = 0WhenAssessment is submittedThenScore 15 stored, severity moderately severe (15–19), follow-up task created per your protocol
H-029
P1
Self-harm item escalates on its ownCare plans and assessments · UI + SOQLGivenPHQ-9 total 6, item 9 = 1WhenAssessment is submittedThenClinician escalation task created at once, even though the total is mild
H-030
P2
Care plan from a templateCare plans and assessments · UIGivenTemplate with 3 goals and 8 tasksWhenCoordinator applies it to a new enrolleeThen3 goals and 8 tasks with owners and due dates relative to the start date
H-031
P2
Care team change removes accessCare plans and assessments · SecurityGivenCoordinator A on the care teamWhenCoordinator B is added and A removedThenOpen tasks move to B; A can no longer open the patient
H-032
P1
Patient and clinic in different time zonesAppointments and reminders · UIGivenPatient in Los Angeles books a video visit with a New York clinic at 9:00 ETWhenBooking completesThenPatient sees 6:00 PT, clinic sees 9:00 ET; ServiceAppointment stores one correct UTC time
H-033
P2
No double bookingAppointments and reminders · UIGivenOne open slot, two schedulersWhenBoth book it within the same secondThenOne ServiceAppointment; the second user is told the slot is gone
H-034
P1
Reminders respect opt-outAppointments and reminders · IntegrationGivenTwo patients with visits tomorrow; one opted out of SMSWhenReminder job runs 24 hours beforeThenOne SMS sent, none to the opted-out patient; both outcomes logged
H-035
P1
Front desk cannot see diagnosesPHI access and audit · SecurityGivenUser with the front-desk profileWhenOpens a patient and runs a report on conditionsThenDiagnosis fields and condition records hidden in the UI, reports and API
H-036
P1
Substance use records stay behind Part 2 consentPHI access and audit · Security42 CFR Part 2GivenPatient with a 42 CFR Part 2 program recordWhenA general care coordinator opens the patientThenPart 2 data not visible without the authorization your policy requires
H-037
P1
Audit trail on clinical fieldsPHI access and audit · SOQLGivenHistory tracking on the diagnosis code; Field Audit Trail policy setWhenA user changes ICD-10 E11.9 to E11.65ThenOld value, new value, user and timestamp stored; retention covers the change beyond 18 months
H-038
P1
Portal users see only their own recordsPHI access and audit · SecurityGivenPortal user for patient A; record ID of patient BWhenUser opens B’s record URL and calls the API with B’s IDThenInsufficient privileges on both
H-039
P2
No PHI in email subject linesPHI access and audit · UIGivenAppointment and results-ready email templatesWhenEach template is sent to a test inboxThenSubjects carry no diagnosis, drug or result; bodies follow minimum necessary
H-040
P1
Sample drop needs a valid licenseLife sciences: visits and samples · UI21 CFR 203GivenHCP whose state license expired 2026-10-31WhenRep records a sample disbursement on 2026-11-05ThenDisbursement blocked with a license message; the visit still saves without samples
H-041
P1
Per-HCP sample limitLife sciences: visits and samples · UIGivenLimit 10 units per HCP per year; 10 already givenWhenRep adds 1 more unitThenBlocked; message shows 10 of 10 used
H-042
P1
Signed receipt for every sampleLife sciences: visits and samples · UI + SOQL21 CFR 203.31GivenVisit with a 2-unit sample dropWhenRep submits without the HCP signatureThenSubmit blocked; with the signature, the receipt stores name, address, title, signature, product, quantity and date
H-043
P2
Group visit records samples per attendeeLife sciences: visits and samples · UI + SOQLGivenLunch-and-learn with 4 HCPs; samples to 2 of themWhenVisit is submittedThenSample disbursements exist for exactly those 2; products discussed cascade to all 4
H-044
P1
Rep inventory reconcilesLife sciences: visits and samples · SOQL21 CFR 203.31(d)GivenRep received 120 units, disbursed 85, returned 20WhenReconciliation runsThenOn hand = 15; any physical count other than 15 opens a discrepancy
H-045
P1
Small payments still add upLife sciences: payments, consent, safety · SOQLOpen Payments PY2026GivenEleven meals to one HCP in 2026 at $12.80 eachWhenOpen Payments extract runsThenEach meal is under $13.82, but the $140.80 total passes $138.13, so all eleven are reportable
H-046
P1
Consent before benefits investigationLife sciences: payments, consent, safety · UI + SOQLGivenPatient services enrollment without a signed HIPAA authorizationWhenHub specialist starts a benefits investigationThenBlocked until the authorization is on file; consent date stored on the enrollment
H-047
P1
Adverse event inside a call noteLife sciences: payments, consent, safety · UI + SOQL21 CFR 314.80GivenRep logs: “patient had a seizure after the second dose”WhenCall is savedThenAdverse event record created and routed to pharmacovigilance in your SOP window; serious unexpected events start the 15-day FDA clock

Values are examples. Rules are US federal requirements as we read them on November 7, 2026; state law, contracts and your SOPs may be stricter. Swap in your own numbers before you run the suite.

// the numbers //

Numbers your tests must enforce

Numbers your tests must enforce

72 hours, 7 calendar days

Prior authorization decision deadlines for expedited and standard requests at Medicare Advantage, Medicaid and CHIP payers since January 1, 2026 (CMS-0057-F). Test the stored due date, not the label.

January 1, 2027

The FHIR Prior Authorization, Patient Access, Provider Access and Payer-to-Payer APIs must be live under the same rule. Integration tests need a FHIR path, not only X12 278.

$13.82 and $138.13

Open Payments thresholds for 2026. A transfer of value under $13.82 is exempt unless the year’s total to that HCP passes $138.13. Test the aggregate, not the line.

A signature on every sample

PDMA rules (21 CFR 203) need a signed request and a signed receipt for drug samples, plus inventory reconciliation. A sample drop without both is a failed test.

18 months or 10 years

Standard field history keeps 18 months of changes in the org. Field Audit Trail (Shield) can keep up to 10 years. Know which one backs your audit test.

60 days

The outer limit for telling individuals about a HIPAA breach. Access tests are cheaper than breach notices: run every key screen as each profile, never as an admin.

Check these with your compliance team

These are US federal rules as we read them on November 7, 2026. State law, payer contracts and your own SOPs are often stricter. Use them as starting oracles, then replace each number with the one your policy sets.

// object map //

Which objects each process touches

Which objects each process touches

ProcessObjects and APIs to checkWhat usually breaks
ProcessPatient and member records4 cases · 2 P1 · H-001 to H-004Objects and APIsAccount (person account)Contactcontact relationshipsWhat usually breaksDuplicates from intake and EHR feeds; merges that orphan clinical records; outreach to deceased patients.
ProcessEHR feeds (HL7 v2, FHIR)3 cases · 1 P1 · H-005 to H-007Objects and APIsHL7 v2 ADT messagesHealth Cloud FHIR APIsMuleSoft Direct integrationsWhat usually breaksUpdates that create a second patient; merge and update messages processed out of order.
ProcessCare programs5 cases · 2 P1 · H-008 to H-012Objects and APIsCareProgramCareProgramEnrolleeCareProgramEligibilityRuleEnrollmentEligibilityCriteriaCareProgramEnrolleeProductWhat usually breaksEligibility boundaries written as > instead of ≥; double enrollment; disenrollment that leaves tasks open.
ProcessBenefits verification5 cases · 3 P1 · H-013 to H-017Objects and APIsCareBenefitVerifyRequestMemberPlanPurchaserPlanCoverageBenefitCoverageBenefitItemCoverageBenefitItemLimitWhat usually breaksStubs that always return active coverage; timeouts that leave half-written benefits.
ProcessUtilization management10 cases · 7 P1 · H-018 to H-027Objects and APIsCareRequestCareRequestItemCareRequestDrugCareDiagnosisCareRequestReviewerTrackedCommunicationCareRequestSupportingCntntWhat usually breaksDecision clocks on business hours; decisions stored only on the header; denials without a specific reason.
ProcessCare plans and assessments4 cases · 2 P1 · H-028 to H-031Objects and APIsAssessment (Discovery Framework)care plan, goal and task recordsWhat usually breaksScores shown on screen but not stored; a safety item hidden inside a mild total.
ProcessAppointments and reminders3 cases · 2 P1 · H-032 to H-034Objects and APIsServiceAppointmentWorkTypeServiceResourceServiceTerritoryWhat usually breaksPatient and clinic in different time zones; two people booking one slot; SMS to opted-out patients.
ProcessPHI access and audit5 cases · 4 P1 · H-035 to H-039Objects and APIsprofiles and permission setssharing rulesfield history and Field Audit TrailShield Platform EncryptionWhat usually breaksTests run as an admin who can see every record and field.
ProcessLife sciences: visits and samples5 cases · 4 P1 · H-040 to H-044Objects and APIsvisit and sample disbursement recordsrep sample inventoryHCP license dataWhat usually breaksExpired state licenses still accepted; group visits that record samples once for everyone.
ProcessLife sciences: payments, consent, safety3 cases · 3 P1 · H-045 to H-047Objects and APIstransfer-of-value recordspatient services enrollment and consentadverse event recordsWhat usually breaksSmall payments never aggregated; adverse events left inside call notes.

// field notes //

Seven ways Health Cloud tests pass and still miss the bug

Seven ways Health Cloud tests pass and still miss the bug

01

Business hours on a calendar-day clock

Entitlement milestones often run on business hours. Prior authorization clocks run on calendar days and elapsed hours. Test a Friday afternoon request, a holiday and the DST change.

02

Tests that run as an admin

An admin sees every diagnosis, every Part 2 record and every patient. Run each test as the profile that does the job: front desk, UM nurse, rep, portal patient.

03

Synthetic patients that are too clean

Real intake has accents, hyphens, twins with one birth date and MRNs with leading zeros. Clean data passes duplicate rules that real data breaks.

04

A payer stub that only says yes

If the benefits stub never times out, never returns terminated coverage and never denies, half the flows are untested. Script the failure answers first.

05

Checking the screen, not the record

A green banner is not a decision. Query the CareRequestItem lines, the enrollee status and the CoverageBenefit rows after each step.

06

Old package fields after the move to core

Health Cloud began as a managed package and has moved features onto the core platform. Tests and code that still reference package fields break quietly when you adopt the core objects.

07

Skipping the preview sandbox

Health Cloud is now Agentforce Health, ships three releases a year, and utilization management runs on OmniStudio components. Rerun the P1 cases in a preview sandbox before each release.

// test data //

The test data that finds these bugs

The test data that finds these bugs

Most Health Cloud defects we see hide in data the sandbox doesn’t have: the duplicate with an accent, the request logged at 16:59 on a Friday, the user who isn’t an admin. Build these sets once and reuse them every release.

Data setMinimumWhat to include
Data setPatientsMinimum60What to include10 duplicate pairs (accents, hyphens, swapped first and last names), 3 minors, 2 deceased, twins with one birth date, MRNs with leading zeros
Data setMember plansMinimum8What to includeActive, terminated, future-dated, primary plus secondary, ending mid-month, a benefit limit already used up
Data setCare requestsMinimum13What to include2 priorities × 3 types (service, drug, admission) × approve or deny, plus 1 multi-line partial approval
Data setClock timestampsMinimum6What to includeFriday 16:59, a Saturday, Thanksgiving 2026-11-26, the DST change on 2026-11-01, 23:59 on December 31, leap day 2028-02-29
Data setUsersMinimum7 profilesWhat to includeFront desk, care coordinator, UM nurse, behavioral health reviewer, field rep, portal patient, portal guardian. Never an admin.
Data setHCPsMinimum20What to includeActive, expired and out-of-state licenses; 4 in one group visit; one already at 10 of 10 samples
Prove the logic in the UI, push the volume through the API

A group health policy on one of our partner projects carries up to 2,400 members and is heading to 5,000. Eight inputs drive each premium; at just two values each, that is 256 combinations. At about 2 minutes per UI test, 2,000 combinations take over 66 hours. Keep 1 to 5 end-to-end UI flows that prove the calculation, load the rest through the API, and check every result with SOQL.

// questions //

Questions about testing Health Cloud

What should I test first in Salesforce Health Cloud?

Start with anything that has a clock or a patient-safety consequence: prior authorization decisions, benefits verification, care program eligibility and who can see which records. Those are the P1 cases on this page. Page layouts can wait.

Is Salesforce Health Cloud the same as Agentforce Health?

Yes. Salesforce now calls Health Cloud Agentforce Health, and Life Sciences Cloud Agentforce Life Sciences. Objects such as CareRequest and CareProgramEnrollee keep their API names, so the test cases still apply.

How do I test prior authorization deadlines in Health Cloud?

Create requests at awkward times: Friday afternoon, a holiday, the night of a daylight saving change. For payers under CMS-0057-F, expedited decisions are due within 72 hours and standard ones within 7 calendar days. Check the due date stored on the record, not only the timer on screen.

Can I use real patient data in a Health Cloud sandbox?

Avoid it. Use synthetic patients that look like real intake: accents, hyphenated names, twins with one birth date, MRNs with leading zeros. If you must refresh from production, mask PHI before testers get access.

Which user should Health Cloud tests run as?

The user who does the job. Admins bypass field-level security and sharing, so access bugs stay hidden. Run the P1 cases as front desk, care coordinator, UM reviewer, field rep and portal patient.

Can TestZeus run these Health Cloud test cases?

Yes. Import the cases in plain English or Gherkin, run them in a sandbox as different profiles, and check results with SOQL, API calls and generated documents. TestZeus is SOC 2 Type II and ISO 27001 certified, HIPAA compliant, and can mask data before it reaches an LLM.

// next step //

Run these cases on your own sandbox

Bring your ten most important cases. We will run them on your sandbox as real profiles, check the records they write, and walk you through the report.

// Start testing //

balance cost, quality and deadlines with TestZeus' Agents.

balance cost, quality and deadlines with TestZeus' Agents.