Aim to mention 20-40 concrete checks. This expanded list helps you turn a short answer into a structured senior-style response.
Permission prompt, permission granted, denied, revoked, provisional, and not-now states are handled.
Opt-in, opt-out, notification preferences, muted content, quiet hours, and do-not-disturb rules are respected.
Push token registration, device token refresh, old token invalidation, logout token removal, and account switch work.
Multiple devices, app reinstall, app upgrade, and OS notification settings behave according to requirements.
Correct recipient receives the push and wrong user, wrong tenant, or unauthorized recipient does not.
Foreground, background, killed app, locked screen, and notification center behavior are verified.
Deep links open the correct screen and handle login required, deleted target, or permission revoked states.
Notification title, body, icon, image, payload schema, payload size, localization, and timezone are correct.
Badge count, read/unread sync, notification grouping, and clear notification behavior work.
iOS, Android, APNs, FCM, simulator/device differences, and platform-specific behavior are covered.
Provider timeout, provider error, provider outage, invalid token, and delivery latency are handled.
Queue retry, retry backoff, worker restart, queue restart, malformed payload, and partial send failure are tested.
Duplicate notifications are prevented across duplicate events, retries, webhook retries, and app reconnects.
Unauthorized notification API requests are rejected with correct status codes and response schema.
High-volume sends do not overload providers, workers, or users.
Sensitive data is not exposed in payload, notification preview, lock screen, logs, analytics, or URLs.
Open redirects are blocked and XSS in notification content is escaped.
Screen reader behavior, mobile layout, loading state, error state, and preference UX are usable.
Delivery status, open rate, click tracking, conversion analytics, and unsubscribe metrics are accurate without leaking private data.
Audit logs, metrics, alerts, and support diagnostics help investigate delivery issues.
Structure your answer: Start with permission prompt states, opt-in/out, token registration, and correct recipient delivery.
Structure your answer: Add app lifecycle behavior: foreground, background, killed app, lock screen, badge count, and notification center.
Structure your answer: Add content and navigation: payload, localization, timezone, quiet hours, deep links, login required, and deleted targets.
Structure your answer: Close with provider failures, retry logic, duplicate prevention, privacy, analytics, accessibility, and observability.
Do not miss: Device token refresh and logout token removal.
Do not miss: Foreground, background, killed app, and lock screen differences.
Do not miss: Quiet hours, timezone, localization, and preference rules.
Do not miss: Duplicate notifications caused by retries or duplicate events.