javascript – 你如何冻结/假时间与茉莉花BDD

前端之家收集整理的这篇文章主要介绍了javascript – 你如何冻结/假时间与茉莉花BDD前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我的代码中有这样一行
new Date().getFullYear();

我需要它总是在同一年返回.

有没有办法用茉莉花做这个?

谢谢.

解决方法

在JavaScript中,您可以简单地覆盖测试设置中的功能
Date.prototype.getFullYear = function(){return 2012}

您也可以使用jasmine spy

spyOn(Date,'getFullYear').andReturn(2012)

另一种方法是将日期插入到你想要测试的函数中.哪个是btw编写可测试代码的最佳方式.不要在你的函数中创建新的实例,因为你总是开始测试不仅你的代码,而且这个实例.

猜你在找的JavaScript相关文章