量角器无法捕获垫对话框容器

Protractor can't catch mat-dialog-container

我对 Angular 5 应用程序的 Protractor 测试工作正常,直到它需要捕获带有输入字段的弹出窗口,弹出元素是

<mat-dialog-container class="mat-dialog-container ng-tns-c26-5 ng-trigger ng-trigger-slideDialog ng-star-inserted">

我试过浏览器等待、浏览器休眠,我的代码当前是:

await element(by.id('mat-dialog-container')).to.eventually.equal(true);
browser.waitForAngular();
browser.sleep(60 * 1000); 
await element(by.id('mat-input-1')).sendKeys('A value');
await element(by.id('mat-input-2')).sendKeys('A value');

捕捉 mat-dialog 弹出窗口时注意捕捉?

元素的 id 不是它的标签名。扩展您的 HTML 并添加一个 id。然后重试。

<mat-dialog-container id="mat-dialog-container" class="mat-dialog-container ng-tns-c26-5 ng-trigger ng-trigger-slideDialog ng-star-inserted">

与您的垫子输入相同

<mat-input id="mat-input-1"></mat-input>
<mat-input id="mat-input-2"></mat-input>