Skip to content

Commit d9029f7

Browse files
committed
docs: add release testing checklist
1 parent d4ce40a commit d9029f7

File tree

2 files changed

+200
-0
lines changed

2 files changed

+200
-0
lines changed

docs/SUMMARY.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ generator, in this case, **mdbook**. It defines the structure and navigation of
5151
- [Release Process](release/RELEASE.md)
5252
- [Release Automation](release/AUTOMATION.md)
5353
- [Developer Release Checklist](release/developer-checklist.md)
54+
- [Release Testing Checklist](release/testing-checklist.md)
5455
- [Manual Release (historical)](release/HISTORICAL_RELEASE.md)
5556
- [Security]()
5657
- [Threat Modeling Guide](security/threat-modeling-guide.md)

docs/release/testing-checklist.md

Lines changed: 199 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,199 @@
1+
### Release Manual Testing Checklist
2+
3+
Purpose
4+
5+
- Ensure consistent, repeatable pre-release validation across core areas: installation/upgrade, UI/UX, functionality regression, performance, connectivity, and security/privacy.
6+
- Provide a short “Smoke” run and a full “Release” run.
7+
8+
When to use
9+
10+
- Before every Beta/Production release
11+
- After high‑risk feature merges
12+
13+
Test environments
14+
15+
- Devices: At least one low-end and one mid/high-end device; 1 emulator
16+
- OS versions: Last 3 major Android versions supported + Lowest supported (API 21)
17+
- Network: Wi‑Fi, LTE/3G, Offline/Airplane; captive portal if available
18+
- Accounts: At least 2 IMAP accounts (different providers), 1 POP3 if supported; one account with many messages/folders
19+
- Locales: English + one non‑English (RTL if possible)
20+
- Themes: Light and Dark
21+
22+
Data prerequisites
23+
24+
- Test mailboxes with folders: Inbox, Sent, Drafts, Trash, Spam, Archive, custom folders
25+
- A few threads with 50+ messages for performance/scroll tests
26+
- At least one account configured with push (if supported)
27+
28+
How to record results
29+
30+
- Mark each item Pass/Fail/Blocked/Not Applicable
31+
- Record build/commit, device, OS, account provider, network type
32+
- File defects with clear reproduction steps, logs, and screenshots
33+
34+
## Quick Smoke (15–25 min)
35+
36+
1. Install/Launch
37+
- Fresh install: App installs and launches without crash
38+
- First‑run: Onboarding visible, no ANRs
39+
2. Account Setup (1 IMAP)
40+
- Manual or auto‑config completes; inbox loads
41+
3. UI Smoke
42+
- Navigate: Account list → Inbox → Message → Back works
43+
- Compose: Create draft, send to self, appears in Sent and then Inbox
44+
4. Sync/Refresh
45+
- Pull‑to‑refresh fetches new mail; background sync triggers at expected times
46+
5. Notifications
47+
- Receive mail notification; tap opens message; mark as read behavior correct
48+
6. Basic Actions
49+
- Read, star/flag, delete to Trash; undo/restore if offered
50+
7. Performance quick check
51+
- App cold start acceptable, scrolling in Inbox smooth
52+
53+
## Full Release Checklist
54+
55+
### A. Installation and Upgrade
56+
57+
Top-level verification
58+
59+
- Fresh Install — App installs and runs correctly on a fresh install
60+
- Installs and launches without crash
61+
- Permissions requested only when needed; rationale shown
62+
- First‑run experience shows expected screens/toggles
63+
- Upgrade from Production — App upgrades correctly from the latest production version (only for releases)
64+
- Upgrade from latest production build preserves accounts, settings, and local cache
65+
- No duplicate notifications or migration errors on first launch
66+
- Upgrade from Beta — App upgrades correctly from the latest beta version
67+
- Upgrade from latest beta build preserves accounts, settings, and local cache
68+
- Feature flags and migrations behave correctly when upgrading from beta
69+
- No duplicate notifications or migration errors on first launch
70+
- Backup/Restore
71+
- Backup 1 account setting, delete account from app, restore from backup; account usable
72+
- Backup all accounts, uninstall/reinstall, restore settings; accounts usable
73+
- Settings Import via QR code (only Thunderbird)
74+
- From first-run flow, choose "Import settings"; scan a valid QR; settings are imported/applied or account is added/usable
75+
- From Settings > Import, choose "Scan QR code"; scan a valid QR; settings are imported/applied or account is added/usable
76+
- Try an invalid or expired QR; a clear error is shown and the app does not crash
77+
78+
### B. Account Management
79+
80+
- Add accounts
81+
- Auto‑config works for common providers; fallback to manual works
82+
- Validation errors are clear (username/password/server settings)
83+
- Multiple accounts
84+
- Switch accounts; titles/subtitles update correctly
85+
- Unified Inbox visibility matches setting and number of accounts
86+
- Delete account
87+
- Deleting current account transitions correctly (Unified Inbox if enabled and >1; else default account)
88+
- No crash during or after deletion; capability checks safe
89+
- Special folders
90+
- Drafts/Sent/Archive/Trash/Spam configured/created as needed
91+
92+
## C. Core Mail Flows (per account)
93+
94+
- Receiving
95+
- New message appears after push/refresh; badge/notification updates
96+
- Reading
97+
- Open message; images loading policy obeyed; external images prompt if applicable
98+
- Compose/Reply/Forward
99+
- From identity correct; quoted content; signatures; attachments; send succeeds
100+
- Drafts
101+
- Auto‑save draft; edit and send later
102+
- Move/Copy
103+
- Move/copy messages between folders; operation succeeds and reflects in UI
104+
- Search
105+
- Local search by sender/subject/body; filters; results correct; remote search if supported
106+
- Attachments
107+
- Download, open with external app, share; large attachment handling
108+
109+
## D. UI and UX
110+
111+
- Navigation
112+
- Drawer/tabs/back behavior consistent; deep linking from notifications
113+
- Message List view
114+
- Threaded/flat messages shown; selection mode; swipe actions (customizable to check archive/delete)
115+
- Message view
116+
- Rendering of HTML/plain text; long messages; quoted text expansion; link handling
117+
- Image loading per settings; attachment previews
118+
- Theming and localization
119+
- Light/Dark theme correctness; typography and icons;
120+
- Non‑English locale strings fit and are translated; RTL layout alignment
121+
- Accessibility
122+
- TalkBack announcements; content descriptions present
123+
- Focus order logical; dynamic type/Font scale respected
124+
125+
## E. Performance and Resource Use
126+
127+
- Startup performance
128+
- Cold start time acceptable on low‑end device
129+
- Scrolling and list operations
130+
- Smooth scrolling in Inbox with 1000+ items; no jank during load more
131+
- Sync performance
132+
- Time to first sync for a fresh account reasonable; no repeated retries
133+
- Resource usage
134+
- No abnormal CPU usage when idle; memory stable during long scrolling; cache does not balloon unexpectedly
135+
136+
## F. Connectivity and Background Behavior
137+
138+
- Network transitions
139+
- Wi‑Fi → Cellular → Offline: app handles gracefully; shows appropriate banners/status
140+
- Offline usage
141+
- Read previously synced messages; queued actions (send/move) execute on reconnect
142+
143+
## G. Notifications
144+
145+
- New mail
146+
- Shows correct sender/subject; grouping for multiple messages
147+
- Actions: Mark read, Delete, Archive function correctly and reflect in app
148+
- Quiet hours/Do Not Disturb
149+
- Respected according to settings
150+
151+
## H. Settings and Preferences
152+
153+
- General settings
154+
- Unified Inbox toggle behavior: only shows when >1 accounts, correct fallback behavior
155+
- Sort options persist per account/unified; changes reflected immediately
156+
- Account settings
157+
- Outgoing/incoming server edits persist; re‑auth flows; OAuth if applicable
158+
159+
## I. Security and Privacy
160+
161+
- Permissions
162+
- No unexpected permission prompts; revoking a permission shows clear error states
163+
- Sensitive logging
164+
- Disabled by default; enabling shows warnings; logs redact personal data where possible
165+
- Certificates (if applicable)
166+
- Certificate errors surfaced with clear options; pinning remembered
167+
168+
## J. Regression Checks (recently changed areas)
169+
170+
- Check changes in this release
171+
- Perform smoke tests around changed screens/use cases
172+
- Logs, crashes, and ANRs
173+
- No new crashes/ANRs; logging remains appropriate and doesn’t expose sensitive data
174+
- Quick smoke around changed screens
175+
- Basic open/close, refresh/sync, action buttons, and navigation work
176+
177+
K. Known Issues Verification
178+
- Validate that previously documented known issues still match behavior and are noted in release notes
179+
180+
## Sign-off
181+
182+
- All “Smoke” items: Pass
183+
- No Critical/High defects open; Medium has workarounds; Low acceptable
184+
- Performance thresholds met on target devices
185+
186+
## Appendix A: Quick result template
187+
188+
- Build/Commit:
189+
- Device/OS:
190+
- Accounts:
191+
- Network:
192+
- Locale/Theme:
193+
- Summary:
194+
- Defects filed:
195+
196+
## Appendix B: Full run log template
197+
198+
- Include timestamps, steps, expected vs actual, screenshots, and logs as needed
199+

0 commit comments

Comments
 (0)