Angular 角度2测试:从ngModel获取值

Angular 角度2测试:从ngModel获取值,angular,angular4,Angular,Angular4,我正在尝试编写一个测试,对Angular的ngModel属性进行断言。在这一点上,我可以很容易地测试标签。但是,我无法从ngModel 问题从ngModel获取值的最佳方法是什么 HTML: <div name="customerName"> <label>Customer Name: </label> <div> <input type="text" class="form-control" [ngModel

我正在尝试编写一个测试,对Angular的
ngModel
属性进行断言。在这一点上,我可以很容易地测试标签。但是,我无法从
ngModel

问题
ngModel
获取值的最佳方法是什么

HTML:

<div name="customerName">
    <label>Customer Name: </label>
    <div>
        <input type="text" class="form-control" [ngModel]="customer.name" asInline disabled />
    </div>
</div>

async
whenStable一起使用

it('should recognize a timepicker', async(() => {
  fixture = TestBed.createComponent(ExampleComponent);
  fixture.detectChanges();

  fixture.whenStable().then(() => {
    expect(fixture.debugElement.nativeElement.querySelector('[name=customerName] label').textContent).toEqual('Customer Name: ');

    expect(fixture.debugElement.nativeElement.querySelector('[name=customerName] div input').value).toEqual('Bobby Tables');
  });   
}));

或带有勾号的伪异步:

it('should recognize a timepicker', fakeAsync(() => {
  fixture = TestBed.createComponent(ExampleComponent);
  fixture.detectChanges();
  tick();

  expect(fixture.debugElement.nativeElement.querySelector('[name=customerName] label').textContent).toEqual('Customer Name: ');

  expect(fixture.debugElement.nativeElement.querySelector('[name=customerName] div input').value).toEqual('Bobby Tables');
}));

别忘了导入
FormsModule

TestBed.configureTestingModule({
    imports: [FormsModule],
    ...

你有什么错误?谢谢你的回复。不幸的是,这并不能解决我的问题。
.value
返回一个空字符串。如果我在
[name=customerName]div输入
级别记录它,我会得到
。我已经验证了,我的组件有正确的数据。还有其他想法吗?我已经开始工作了,需要在每次之前将
导入:[FormsModule]
添加到我的
谢谢!
TestBed.configureTestingModule({
    imports: [FormsModule],
    ...