Time bugs hide because they only show on certain days, in certain places, or after a setting change. Most can be provoked on purpose by changing the device settings. Each item has a reason and a check.
Setup
Use a test account and a build where you can move the device clock. Note your own timezone first, then pick a second one far away (several hours apart, ideally also one with a half-hour offset).
Timezone
1. Switching timezone Why: travellers and remote teams hit this daily. How to check: create an event or entry, change the device timezone, return to the app. Is the same moment shown at the correct local time, or is the time shifted when it should not be (an all-day birthday vs. a meeting)?
2. Entry created in one zone, viewed in another Why: server and device times can disagree. How to check: create on device A in zone X, open the same account on device B in zone Y. Compare date, time and the day label ("Today", "Yesterday").
3. Automatic vs. manual timezone Why: some users set it by hand. How to check: toggle "set automatically" off and on and watch what the app does without restarting.
Daylight saving
4. The switch days Why: one day has 23 or 25 hours, and 02:30 may not exist or may exist twice. How to check: set the device date to the evening before a clock change in your region and keep the app open past the change. Test reminders, schedules and duration calculations that cross it.
5. Recurring items Why: "every day at 9:00" must stay 9:00 local time. How to check: create a daily or weekly reminder and move the clock across the change. Does the next trigger stay at the expected local time?
Formats
6. 12-hour and 24-hour clock Why: formats follow device settings and people notice mismatches. How to check: switch the system setting and revisit every screen with times. Check "AM/PM" placement, text fields and pickers.
7. Date order and week start Why: 03/04 can mean two different dates; calendars start on different days. How to check: change region to one with day-first and one with month-first order and one with a Monday start. Check lists, pickers and inputs.
Device clock changes
8. Clock set to the past or future Why: wrong device time breaks logins, caches and expiry checks. How to check: set the clock a day ahead, then back, and use the app. Look for stuck "expired" states, wrong countdowns and failed secure connections. See session expiry.
9. Midnight and day boundaries Why: "today" flips at the user's midnight, not the server's. How to check: use the app a few minutes before and after local midnight and check streaks, daily limits and day grouping.
10. Edge dates Why: month ends and leap days break date maths. How to check: use the 31st, February 28 and 29 where valid, the end of the year and dates far in the past or future. Check sorting and "x days ago" labels.
Related
- Hub: mobile app testing checklists
- Currency and number format testing checklist
- Unicode, emoji and long text input testing
Testers in other regions see the bugs your own settings hide. Start free.