Purpose
A living manual-QA checklist for the battery-monitoring work (the review #5–#16, #18 temp, #12 capacity, #7 cycle count). Tracks what to check, how, where, and whether it's verified — so testing is done deliberately on a real device rather than ad-hoc.
Legend: ✅ verified · ⏳ not yet verified · 🔬 needs a physical device (can't be done reliably on an emulator) · 🤖 covered by automated unit tests (CI).
How to test
- Install the debug build:
./gradlew :app:installDebug (or adb install -r -g app/build/outputs/apk/debug/app-debug.apk), or Run from Android Studio.
- Grant the notification permission when prompted (Android 13+).
Automated (CI) — 🤖 no manual action needed
Core behaviour — manual
| # |
Check |
How / Where |
Status |
| 1 |
App launches, shows battery % + status |
Open app |
✅ (emulator) |
| 2 |
Persistent notification shows live % · status · temp, silent + ongoing |
Pull notification shade |
✅ (emulator) |
| 3 |
Warning alert fires at warning level |
Let battery pass the warning % (or set warning high) |
⏳ |
| 4 |
Critical alert fires at critical level |
Let battery pass the critical % |
✅ (emulator, in-app) |
| 5 |
Full-charge alert fires at 100% while charging |
Charge to full |
⏳ |
| 6 |
Alerts arrive while app is fully closed / swiped away |
Swipe app away, let level cross a threshold, wait |
🔬 ⏳ |
| 7 |
Monitoring + persistent notification resume after reboot |
Reboot device, don't open app, check shade |
🔬 ⏳ |
Temperature alert (#18)
| # |
Check |
How / Where |
Status |
| 8 |
"High Temperature Alert" toggle + threshold slider present |
Settings → Notifications & Sounds → Temperature |
✅ (emulator) |
| 9 |
Threshold shows user's unit; switching to °F shows °F range (e.g. 45 °C ↔ 113 °F) |
Change General → Temperature Unit, revisit slider |
✅ (emulator) |
| 10 |
Temperature reads in chosen unit on main + details |
Main screen "Temperature" row |
✅ (emulator: 25 °C / 77 °F) |
| 11 |
Alert actually fires when battery gets hot (with hysteresis, one alert per hot spell) |
Heavy load / charging in warm room |
🔬 ⏳ |
Settings / preferences
| # |
Check |
How / Where |
Status |
| 12 |
Vibrate toggle present; ON→alerts vibrate, OFF→silent-vibration |
Settings → Notifications & Sounds; trigger an alert |
✅ present / ⏳ behaviour |
| 13 |
Warning/critical level validation (warning must stay > critical) |
General → move the sliders together |
⏳ |
| 14 |
Quiet-hours window suppresses sound outside range |
Set a time window, trigger an alert inside/outside it |
⏳ |
| 15 |
Long settings list clears the system nav bar (no overlap) |
Scroll to the bottom of Notifications & Sounds |
✅ (emulator) |
| 16 |
Debug menu (long-press health %) is absent in release, present in debug |
Long-press the health % on Battery Insights |
⏳ (logic verified) |
Battery Insights
| # |
Check |
How / Where |
Status |
| 17 |
Charge cycles show the real OS value where reported |
Battery Insights → Charge Cycles |
🔬 ⏳ (emulator doesn't report EXTRA_CYCLE_COUNT; fallback shown) |
| 18 |
Health % + status render and are consistent with cycles |
Battery Insights |
✅ (emulator, cycle-based) |
| 19 |
Capacity shows a value from the public API, or "Unknown" if unavailable |
Main screen "Capacity" row |
✅ value (emulator synthetic) / ⏳ "Unknown" path |
Notes
Tick boxes / update the Status column as things get verified on device.
Purpose
A living manual-QA checklist for the battery-monitoring work (the review #5–#16, #18 temp, #12 capacity, #7 cycle count). Tracks what to check, how, where, and whether it's verified — so testing is done deliberately on a real device rather than ad-hoc.
Legend: ✅ verified · ⏳ not yet verified · 🔬 needs a physical device (can't be done reliably on an emulator) · 🤖 covered by automated unit tests (CI).
How to test
./gradlew :app:installDebug(oradb install -r -g app/build/outputs/apk/debug/app-debug.apk), or Run from Android Studio.Automated (CI) — 🤖 no manual action needed
getBatteryPercentage()guards invalid scale (BatteryDOTest)NotificationServiceTest)TemperatureUtilsTest)charge_counter ÷ capacity%(SystemServiceTest)Core behaviour — manual
% · status · temp, silent + ongoingTemperature alert (#18)
Settings / preferences
Battery Insights
EXTRA_CYCLE_COUNT; fallback shown)Notes
Tick boxes / update the Status column as things get verified on device.