如何在标签中按属性找到元素?



这里我想使用属性mattooltip="Edit project"ng-reflect-message点击这个锚标记:

<a _ngcontent-htr-c655="" mat-menu-item="" mattooltip="Edit project"
class="mat-focus-indicator mat-tooltip-trigger mat-menu-item ng-star-inserted" ng-reflect-message="Edit project"
ng-reflect-router-link="94/241/edit" role="menuitem" tabindex="0" aria-disabled="false"
href="#/enso-business-setup/enso-manage-project/94/241/edit" aria-describedby="cdk-describedby-message-94"
cdk-describedby-host="">Edit
<div matripple="" class="mat-ripple mat-menu-ripple" ng-reflect-disabled="false"
ng-reflect-trigger="https://dev-app.neoenso.com/#/">
</div>
</a>

你可以尝试在Angular中使用sat-popover。

https://stackblitz.com/edit/ncstate-sat-popover-examples-v2nh5v

99%的情况下,我使用by.xpathby.css。所以不要让它过于复杂。在这种情况下,css是最简单的方法

按标签定位,请按

let link = element(by.css('a')) // assuming there is only one a tag
// or
let link = $('a') // shorter way for finding elements in protractor

由属性

let link = element(by.css('[mattooltip="Edit project"]'))
// or
let link = $('[mattooltip="Edit project"]') // shorter way for finding elements in protractor

如果你特别想使用两个带有"OR"条件,如果第一个定位器找到元素或第二个定位器,那么您也可以使用逗号分隔的选择器,即

const link_elem = element(by.css('[mattooltip="Edit project"], [ng-reflect-message="Edit project"]'));

最新更新