【发布时间】:2017-01-27 16:56:54
【问题描述】:
我想在 Angular 2 单元测试中更改输入字段的值。
<input type="text" class="form-control" [(ngModel)]="abc.value" />
我不能只更改ngModel,因为abc 对象是私有的:
private abc: Abc = new Abc();
在 Angular 2 测试中,我可以模拟用户在输入字段中的输入,以便 ngModel 将更新为用户在单元测试中输入的内容吗?
我可以毫无问题地抓取输入字段的DebugElement 和nativeElement。 (只是在输入字段的nativeElement 上设置value 属性似乎不起作用,因为它不会用我为值设置的值更新ngModel。
也许可以调用inputDebugEl.triggerEventHandler,但我不确定要给它什么参数,所以它会模拟用户输入了特定的输入字符串。
【问题讨论】:
标签: unit-testing testing angular jasmine