夏令时(DST)测试
夏令时测试是比较小众的测试,主要针对在有夏令时的国家使用的软件,如果你接触到了这方面的测试,说明你在挣国外的钱:). 话不多说,先来介绍下什么是夏令时: 夏时制,夏时令(Daylight Saving Time:DST),又称“日光节约时制”和“夏令时间”,是一种为节约能源而人为规定地方时间的制度,在这一制度实行期间所采用的统一时间称为“夏令时间”。 我们所说的夏令时实际上包括两类:夏令时和冬令时
- 夏令时(1:00 -> 3:00 AM)
- 往后拨一个小时,直接从1点变到3点,也就是说我们要比原来提前一个小时和美国佬开会。
- 冬令时(1:00 -> 1:00 -> 2:00 AM)
- 往前拨一个小时,要过两个1点,这时比平常晚一个小时。
从这两种类型上看,我们的测试重点是放在有时间相关的操作上(时间显示、比较),以检测系统是否能够正确地运行。 下面我们来介绍夏令时测试需要关注的各个点:
-
-
- 需要注意的点:
-
-
-
- 夏令时没有2:00AM
- 任务消耗时间区间需要特别注意,如果一个任务1:50执行到3:10,其实只用了20分钟,而不是1小时20分钟
- 冬令时有两个一点,预先计划好的任务中说的1:00AM,指的都是第一个1:00AM
- 冬令时有图中5中比较典型的时间段,需要特别注意。
-
- 和其他模块的交互
-
- 模块之间的交互需要遵循一致的规则,最好都能用UTC或者时间戳进行传输
- 如果其他模块未遵循规则,需要对时间的传入和传出进行转换检查
总结:
DST测试的关注点更多的是夏令时、冬令时当天时间转换的处理逻辑,这就需要我们定义出来哪些时间段是容易出问题的,然后结合我们平时的用例,也会比较容易的把DST测试做好。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!