TypeError:无法读取null

时间:2016-08-31 03:02:55

标签: angular jasmine

我在 jasmine和angular 2 RC5 中运行单元测试时收到此错误信息« TypeError:无法读取属性''''''''''''''''''' >

我的单位测试代码是:

describe('Test of category services', () =>{

beforeEach(() => {

                    TestBed.configureTestingModule({
                                providers: [CategoryService ]
                            });
                });

    it('1. Add a new category', inject([CategoryService], (categoryService )  =>{


        categoryService.addCategory(category)
            .subscribe(res => {
                    expect(CATEGORY.codeCategory).toBe(res.codeCategory);
                    expect(CATEGORY.name).toBe(res.name);
                    expect(CATEGORY.taxPercentage).toBe(res.taxPercentage);
                    expect(CATEGORY.description).toBe(res.description);
                    expect(res.idCategory).toBeGreaterThan(0);
                }

            );
    }));

});

在花了很多时间寻找解决方案之后,我决定寻求任何帮助。

谢谢

2 个答案:

答案 0 :(得分:0)

我不知道您的代码存在问题,但我确实知道错误通常意味着您提供的注入不能正确地通过提供程序或构造函数传递。基本上,它不会在您使用它的位置进行注射。对不起,我无法提供更多帮助。

我可以解释的是,您提供的是您正在测试和使用注入的服务,我假设您已经导入了注入库,但您的服务中是否有@Injectable()装饰器?

答案 1 :(得分:0)

更新上一版本(2.0.0)的角度后,我不再出现此错误消息。 谢谢大家的帮助!