You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Angular响应式表单下拉选择框单元测试问题求助

解决Angular响应式表单下拉选择框单元测试无响应问题

你的测试代码核心问题是给下拉框触发了错误的事件类型:下拉选择框的值变更时,浏览器触发的是change事件而非input事件,这导致表单控件没有接收到值更新的通知。

修改后的测试代码如下:

it('should update the value of the contactSuffix field', () => {
  const contactSuffix = fixture.nativeElement.querySelector('#contactSuffix');
  contactSuffix.value = 'mr';
  contactSuffix.dispatchEvent(new Event('change')); // 替换为change事件
  fixture.detectChanges(); // 若组件需要手动触发变更检测可添加
  expect(component.stepForm.controls['contactSuffix'].value).toEqual('mr');
});

额外提示:如果表单初始化时未给contactSuffix控件设置初始值,可在测试用例开头提前设置初始值,避免初始空值的干扰,但核心修复点还是替换事件类型。

内容的提问来源于stack exchange,提问作者KathrynCrawford

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 15:31:02