小编Erd*_*zel的帖子

单元测试Angular 2中的可观察量

在Angular 2中单元测试返回Observable结果的服务的正确方法是什么?假设我们在CarService服务类中有一个getCars方法:

...
export class CarService{
    ...
    getCars():Observable<any>{
        return this.http.get("http://someurl/cars").map( res => res.json() );
    }
    ...
}
Run Code Online (Sandbox Code Playgroud)

如果我尝试按以下方式编写测试,我会收到警告:"SPEC没有预期":

it('retrieves all the cars', inject( [CarService], ( carService ) => {
     carService.getCars().subscribe( result => {         
         expect(result.length).toBeGreaterThan(0);
     } );       
}) );
Run Code Online (Sandbox Code Playgroud)

使用injectAsync并没有帮助,因为就Promise我所见,它可以与对象一起使用.

unit-testing observable jasmine angular

48
推荐指数
4
解决办法
6万
查看次数

标签 统计

angular ×1

jasmine ×1

observable ×1

unit-testing ×1