选择带有量角器的mat-option失败

时间:2018-04-18 16:34:34

标签: radio-button radio-group angular-e2e

以下选择mat-option的方法失败:

  

找不到使用locator的元素:by.cssContainingText(“mat-option”,   “KøbenhavnK”)

element(by.id('area')).element(by.cssContainingText('mat-option', 'København K')).click();

这是HTML:

     <mat-select id="area" formControlName="area" placeholder="Working area">
  <mat-option *ngFor="let area of areas" [value]="area">
    {{ area }}
  </mat-option>

我不明白为什么会失败。

2 个答案:

答案 0 :(得分:1)

尝试:element(by.id('area')).click().then(()=>{ element(by.cssContainingText("mat-option","København K")).click(); });

据我所知,mat-options是动态生成的,并在click()事件期间处于范围内。因此,您必须“单击”,然后使用选项。

希望它能奏效(并且不要太晚:-))。

答案 1 :(得分:0)

尝试一下:-

element(by.id('area'))。click();
element(by.cssContainingText('mat-option .mat-option-text','KøbenhavnK'))。click();

根据我的理解,以上代码必须有效。享受量角器编码:-)