【发布时间】:2021-03-31 07:58:15
【问题描述】:
我是 karma/jasmine 框架的新手。
我正在尝试添加一个测试用例来覆盖我的服务方法(下)
public getAllChassis(): Observable<Chassis[]> {
return this.http.get('chassis').pipe(
mergeMap((result: Chassis[]) => {
for (const chassis of result) {
chassis.healthStatus = 45;
chassis.complianceStatus = 81;
}
return of(result);
}));
}
这不包括回调/内部管道语句。 测试这些 mergeMap 模式的正确方法是什么?
【问题讨论】:
-
在您的帖子中包含您目前拥有的单元测试代码。
-
您必须模拟
Chassis结果并使用该模拟监视http.get().pipe()。然后你可以通过简单地订阅间谍来验证返回。 -
你能把你目前拥有的测试代码包括进来吗?另外,你为什么使用
mergeMap而不仅仅是map然后删除of?
标签: angular typescript rxjs karma-jasmine karma-coverage