【发布时间】:2020-02-07 02:57:05
【问题描述】:
我需要模拟 CodeceptJS 测试的时间。
我的 React 组件使用了new Date() 函数:
const Component = () => {
console.log(new Date())
return <h1>Im a component</h1>
}
我需要组件认为它是 2018 年。对于我的 Jest 单元测试,这很简单:
import MockDate from 'mockdate';
MockDate.set('2018-10');
test("test something", ()=>{
// Actual test here
})
MockDate.reset();
如何使用 CodeceptJS 做同样的事情?我试过在测试中使用日期模拟模块:
Scenario('@test', async (CheckoutPage) => {
const MockDate = require('mockdate');
MockDate.set('2018-10');
// Actual test here
});
我也尝试过依赖注入。 FIX-DATE Monkey 中的代码修补了日期:
Scenario(
'@test',
(CheckoutPage, FixDate) => {
FixDate();
CheckoutPage.load();
pause();
}
).injectDependencies({ FixDate: require('./FIX-DATE') });
这些都不会对日期产生任何影响。
【问题讨论】:
标签: codeceptjs