关于 Mocha 在测试类似短信验证码过期十分钟这种,应该如何去做呢?
如题
Mocha
本身有超时的限制,而且在测试短信验证码的时候,一般过期的时间至少也是5分钟以上,不可能去设置一个5分钟的定时器撒,这样如果整个测试之中有好几个需要测试过期时间的地方,就需要等待很久的时间。
虚心求助…好奇大神们是怎么做的!!!
10 回复
几分钟的还好,像商城订单,24小时未支付就过期,不可能等24小时才出测试结果.
所以方法有2种:
- 缩短测试时间,简单粗暴
- Mock时间,然后手动推动时间轴往前,不记得是哪个框架提供这么个功能来着,等楼下回答
@axetroy 我现在用的就是缩短测试时间,但是每次用的时候又要把时间改回来,感觉不科学… 我就想说能不能mock时间… 搜了一下,也没找到…0.0
api设计的时候,时间作为参数就好了
不建议mock时间,时间做参数比较可行
@i5ting 明白了…谢谢
@nullcc mock时间有什么缺陷吗?
@mintsweet 为测试多写代码也是很有趣的事儿。短期看是麻烦,长期看考虑的是应变
@i5ting 明白,我还要多多学习,谢谢您
@mintsweet mock时间会复杂很多,而且也没必要啊,传参多简单,如果能验证验证码5分钟,10分钟或者其他时间过期是OK的话,那24小时应该也不成问题