3eae148419
Comprehensive test cases for: - Core functionality (fullscreen, webview, whitelist) - Admin access and settings - Idle timeout behavior - Boot persistence - Edge cases and security tests Created by Margaret 🌸 Co-authored-by: Margaret <margaret@hobbs.farm>
103 lines
2.7 KiB
Markdown
103 lines
2.7 KiB
Markdown
# TESTING.md — Manual QA Checklist
|
|
|
|
## Pre-Test Setup
|
|
|
|
- [ ] Fresh Android device or emulator (API 21+)
|
|
- [ ] App installed via `adb install`
|
|
- [ ] Device owner set: `adb shell dpm set-device-owner farm.hobbs.kioskbrowser/.KioskDeviceAdminReceiver`
|
|
- [ ] Default config: homepage=https://hobbs.farm, PIN=1234
|
|
|
|
## Core Functionality Tests
|
|
|
|
### Fullscreen/Immersive Mode
|
|
|
|
- [ ] Status bar hidden on launch
|
|
- [ ] Navigation bar hidden on launch
|
|
- [ ] Swipe from edge shows bars briefly, then auto-hide
|
|
- [ ] Screen stays awake (no auto-sleep)
|
|
|
|
### WebView Browser
|
|
|
|
- [ ] Homepage loads on start
|
|
- [ ] Pages render correctly
|
|
- [ ] JavaScript works
|
|
- [ ] Links within whitelist navigate properly
|
|
- [ ] Scroll works on long pages
|
|
|
|
### URL Whitelist
|
|
|
|
- [ ] Whitelisted domain loads: `hobbs.farm` ✓
|
|
- [ ] Subdomain loads: `git.hobbs.farm` ✓
|
|
- [ ] Blocked domain redirects: `google.com` → homepage
|
|
- [ ] Bypass attempt blocked: `hobbs.farm.evil.com` → homepage
|
|
- [ ] Empty whitelist: all external URLs blocked
|
|
|
|
### Admin Access
|
|
|
|
- [ ] 3-tap top-left corner opens PIN dialog
|
|
- [ ] Wrong PIN rejected, stays in kiosk
|
|
- [ ] Correct PIN (1234) opens settings
|
|
- [ ] Can change homepage URL
|
|
- [ ] Can edit whitelist
|
|
- [ ] Can change idle timeout
|
|
- [ ] Can change PIN
|
|
- [ ] Settings persist after app restart
|
|
|
|
### Idle Timeout
|
|
|
|
- [ ] Timer resets on touch
|
|
- [ ] Timer resets on page navigation
|
|
- [ ] Timeout triggers → returns to homepage
|
|
- [ ] Session/cookies cleared on timeout
|
|
|
|
### Boot & Persistence
|
|
|
|
- [ ] App auto-launches on device boot
|
|
- [ ] Lock Task Mode active (home button disabled)
|
|
- [ ] Recent apps button disabled
|
|
- [ ] Back button blocked or controlled
|
|
|
|
## Edge Cases & Error Handling
|
|
|
|
### Network Errors
|
|
|
|
- [ ] No internet → graceful error message (not crash)
|
|
- [ ] Slow connection → page loads eventually or times out gracefully
|
|
- [ ] WiFi disconnect mid-browse → error shown, retry option
|
|
|
|
### Invalid Configuration
|
|
|
|
- [ ] Empty homepage URL → fallback or error
|
|
- [ ] Malformed whitelist entry → ignored, doesn't crash
|
|
- [ ] Invalid PIN (non-numeric) → handled gracefully
|
|
|
|
### Security Tests
|
|
|
|
- [ ] Cannot exit app without PIN
|
|
- [ ] Cannot access Android settings
|
|
- [ ] Cannot pull down notification shade
|
|
- [ ] Cannot switch apps
|
|
- [ ] Long-press doesn't open context menus
|
|
|
|
### Stress Tests
|
|
|
|
- [ ] Rapid navigation (spam links) → no crash
|
|
- [ ] Multiple idle timeout cycles → stable
|
|
- [ ] Leave running 1+ hours → no memory leaks
|
|
|
|
## Test Results Template
|
|
|
|
| Test | Pass/Fail | Notes |
|
|
|------|-----------|-------|
|
|
| Fullscreen mode | | |
|
|
| Whitelist blocking | | |
|
|
| Admin PIN access | | |
|
|
| Boot auto-launch | | |
|
|
| Idle timeout | | |
|
|
| Network error handling | | |
|
|
|
|
---
|
|
|
|
*QA checklist by Margaret 🌸*
|
|
*Project coordinated by Pluto 🪐*
|