2016-09-11 3 views
0

Я использую angular2-cli для создания проектов, и этот файл spec автоматически создается cli для одного из моих компонентов. Я обновил свое приложение до rc4, и с тех пор я сталкивался с этой проблемой при запуске этого тестового файла. Ниже приведен файл спецификация:Свойство 'createAsync' не существует в типе 'TestBed'

import { 
inject, ComponentFixture, TestBed 
} from '@angular/core/testing'; 
import { Component } from '@angular/core'; 
import { By } from '@angular/platform-browser'; 
import { MockComponent } from './mock.component'; 

describe('Component: Mock',() => { 
let builder: TestBed; 

beforeEachProviders(() => [MockComponent]); 
beforeEach(inject([TestComponentBuilder], function (tcb: TestComponentBuilder) { 
builder = tcb; 
})); 

it('should inject the component', inject([MockComponent], 
    (component: MockComponent) => { 
expect(component).toBeTruthy(); 
})); 

it('should create the component', inject([],() => { 
return builder.createAsync(MockComponentTestController) 
    .then((fixture: ComponentFixture<any>) => { 
    let query = fixture.debugElement.query(By.directive(MockComponent)); 
    expect(query).toBeTruthy(); 
    expect(query.componentInstance).toBeTruthy(); 
    }); 
})); 
}); 

@Component({ 
selector: 'test', 
template: ` 
<test></test> 
`, 
directives: [MockComponent] 
}) 
class MockComponentTestController { 
} 

выше спецификация файл выдает ошибку на «createAsync», я уверен, что createAsync не существует на Testbed, но я заменил TestComponentBuilder с Testbed (TestComponentBuilder устарели в rc4). Просьба представить предложения о том, как решить эту проблему.

ответ

1

Это должно быть createComponent:

fixture = TestBed.createComponent(AppComponent); 
let comp = fixture.componentInstance; 
+0

спасибо за помощь, я понимаю, что вместо использования createAsync я должен использовать createComponent. Но где я должен написать 'comp = fixture.componentInstance'? Он выдает сообщение об ошибке «comp» не определен. – Aiguo

+0

Я обновил свой ответ. Это просто пример того, как получить экземпляр созданного компонента. –

Смежные вопросы