关于 Mocha 在测试类似短信验证码过期十分钟这种,应该如何去做呢?
发布于 6 年前 作者 mintsweet 3598 次浏览 来自 问答

如题

Mocha本身有超时的限制,而且在测试短信验证码的时候,一般过期的时间至少也是5分钟以上,不可能去设置一个5分钟的定时器撒,这样如果整个测试之中有好几个需要测试过期时间的地方,就需要等待很久的时间。

虚心求助…好奇大神们是怎么做的!!!

10 回复

几分钟的还好,像商城订单,24小时未支付就过期,不可能等24小时才出测试结果.

所以方法有2种:

  1. 缩短测试时间,简单粗暴
  2. Mock时间,然后手动推动时间轴往前,不记得是哪个框架提供这么个功能来着,等楼下回答

@axetroy 我现在用的就是缩短测试时间,但是每次用的时候又要把时间改回来,感觉不科学… 我就想说能不能mock时间… 搜了一下,也没找到…0.0

api设计的时候,时间作为参数就好了

不建议mock时间,时间做参数比较可行

@i5ting 明白了…谢谢

@nullcc mock时间有什么缺陷吗?

@mintsweet 为测试多写代码也是很有趣的事儿。短期看是麻烦,长期看考虑的是应变

@i5ting 明白,我还要多多学习,谢谢您

@mintsweet mock时间会复杂很多,而且也没必要啊,传参多简单,如果能验证验证码5分钟,10分钟或者其他时间过期是OK的话,那24小时应该也不成问题

回到顶部