Time Zone Handling
// Definition
The set of logic that converts timestamps between UTC (the storage standard) and local display times, accounting for UTC offsets and Daylight Saving Time transitions. Common bugs: dates shifting by one day at midnight when local offset is applied, DST gaps causing a time to not exist (2:30 AM on spring-forward night), DST ambiguity causing a time to appear twice (1:30 AM on fall-back night), and inconsistent display between server-rendered and client-rendered timestamps. Test strategy: cover at least one timestamp near a DST boundary, one at midnight UTC, and one for a user whose local offset crosses the date line.
// Related terms
Boundary Value Analysis
Testing values immediately at and around boundaries (e.g., min, max, just-below, just-above). Bugs cluster at edges — this technique catches off-by-one errors that equivalence partitioning alone misses.
Equivalence Partitioning
Dividing the input space into groups where the system should behave identically, then testing one representative value per group. Reduces redundant test cases dramatically without losing coverage.
Validation
Checking that input or output conforms to expected rules — format, range, type, length, and business constraints. Client-side validation improves UX but must never be the only defence; server-side validation is the authority. Testing validation coverage includes: boundary values, type coercion, empty and null inputs, maximum lengths, and injection-dangerous characters. Distinct from verification (did we build it correctly?), though the two terms are frequently conflated.