Karma单元测试 - 找出组件实现的抽象类

时间:2017-01-27 08:30:51

标签: unit-testing angular karma-runner

我对AngularJS和Karma很新。不过我订购了有意义的单元测试。当我们被要求在我们创建的每个组件中实现类OnInitOnDestroy时,我想知道是否有一种方法可以检查Karma是否实际实现了它们。

有人有想法吗?

1 个答案:

答案 0 :(得分:2)

为了检查实现,您需要检查组件是否实际实现了这些抽象类所需的方法。

如果DummyComponentimplements OnInit, OnDestroy没有其他依赖关系的组件,那么:

describe( 'DummyComponent', () => {
    let component: DummyComponent;

    beforeEach( () => {
        TestBed.configureTestingModule( {
            declarations: [
                DummyComponent
            ],
            providers: [
                { provide: ComponentFixtureAutoDetect, useValue: true }
            ]
        } );
        component = TestBed.createComponent( DummyComponent ).componentInstance;

    } );

    it( 'should implement onInit and onDestroy', () => {
        expect( component.ngOnInit ).toBeDefined;
        expect( component.ngOnDestroy ).toBeDefined;
    } );
} );