首页 > 解决方案 > 量角器无法捕获 mat-dialog-container

问题描述

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

<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 弹出窗口时注意捕捉?

标签: angularprotractore2e-testing

解决方案


元素的 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>

推荐阅读