我正在使用角度。
Component code
httpClient.post(URL, requestBody)
.pipe(map((result) => {
serviceCall(result);
}));
Run Code Online (Sandbox Code Playgroud)
如何使用 Jest 测试用例覆盖管道内的代码(映射?
我编写了如下的笑话测试用例,但它没有覆盖管道内的语句
spyOn(httpClient, 'post').and
.returnValue(new Observable( observer => {
observer.next([]);
}));
Run Code Online (Sandbox Code Playgroud)
小智 3
当涉及到测试时,代码覆盖率没有任何意义。它只是表明引擎读取了这部分代码。
但如果您想覆盖它,您将必须测试流的最终结果。
spyOn(httpClient, 'post').and.returnValue(of({}));
spyOn(yourService, 'serviceCall').and.returnValue(of({ id: 1 });
myFunction().subscribe(res => expect(res.id).toEqual(1));
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2353 次 |
最近记录: |