jasmine.createSpyObj() 相当于什么玩笑?
what is the equivalent of jasmine.createSpyObj() for jest?
以下代码在 Jest 中的等价物是什么。
let mockHeroService = jasmine.createSpyObj(['getHeros', 'addHero', 'deleteHero']);
我想用它作为 testBed。
TestBed.configureTestingModule({
providers: [
{
provide: HeroService,
useValue: mockHeroService
}
]
});
我的理解是,开个玩笑,你只能监视服务的一种方法,比如
const spy = jest.spyOn(HeroService, 'getHeros');
感谢您的帮助
没有等效项,因为它没有太多用处。 Jest 专注于模块化 JavaScript 并使用 jest.mock
和 jest.createMockFromModule
.
生成自动模拟(存根)
auto-mocks 的问题在于它们会导致未指定的函数集,这些函数的行为与原始函数不同,并且可能使使用它们的代码无法正常工作或静默失败。
没有实现的模拟可以定义为:
let mockHeroService = { getHeros: jest.fn(), ... };
大多数情况下,一些实施是预期的:
let mockHeroService = { getHeros: jest.fn().mockReturnValue(...), ... };
以下代码在 Jest 中的等价物是什么。
let mockHeroService = jasmine.createSpyObj(['getHeros', 'addHero', 'deleteHero']);
我想用它作为 testBed。
TestBed.configureTestingModule({
providers: [
{
provide: HeroService,
useValue: mockHeroService
}
]
});
我的理解是,开个玩笑,你只能监视服务的一种方法,比如
const spy = jest.spyOn(HeroService, 'getHeros');
感谢您的帮助
没有等效项,因为它没有太多用处。 Jest 专注于模块化 JavaScript 并使用 jest.mock
和 jest.createMockFromModule
.
auto-mocks 的问题在于它们会导致未指定的函数集,这些函数的行为与原始函数不同,并且可能使使用它们的代码无法正常工作或静默失败。
没有实现的模拟可以定义为:
let mockHeroService = { getHeros: jest.fn(), ... };
大多数情况下,一些实施是预期的:
let mockHeroService = { getHeros: jest.fn().mockReturnValue(...), ... };