我是角度测试的新手,只是想让我的第一个测试通过。我正在寻找解决这个错误的方法。我不确定下一步该怎么做。一些帮助会很棒!
我有点知道这个问题只是不知道解决这个格式日期错误的方法。 我真的只想让第一个测试通过
你应该模拟你的依赖关系,在这种情况下:
...
const sharedServiceMock = {
formatDate: jest.fn();
} as unknown as SharedService; // Just if you need to type it. Don't use any
beforeEach(async () => {
...
providers: [
...
{ provide: SharedService, useValue: sharedServiceMock },
...
]
...
}).compileComponents();
...
单元测试意味着,你模拟所有外部的东西,只测试你的组件功能的结果。没关系,如果“SharedService”的实现按预期工作,因为你应该已经在 shared.service.spec.ts 中进行了单元测试。
如果 formatDate 函数应该返回一些东西,在组件函数中使用了什么(例如在条件中),那么您可以模拟一个返回值(只是一个例子):
describe('component function', () => {
it('should run successful', {
sharedServiceMock.formatDate.mockReturnValue('1970-01-01');
expect(testUnit.someFunction()).toBe(...);
})
})