在下方的页面中有一个带有sintax的按钮
<div _ngcontent-cnw-c181="" class="col text-center ng-star-inserted">
<p _ngcontent-cnw-c181="" class="text-primary font-weight-bold">
Click the button below
</p>
<button _ngcontent-cnw-c181="" type="button" routerlink="/web/click" class="btn btn-primary" tabindex="0" ng-reflect-router-link="/web/click">
<i _ngcontent-cnw-c181="" aria-hidden="true" class="fa fa-check-circle"></i>
Click Here
</button>
</div>
但当我尝试使用Locator对其进行本地化时,它会返回错误:Microsoft.Playwright.PlaywrightException: 'Unknown engine "routerlink" while parsing selector routerlink=/web/click'
Page.Locator("routerlink=/web/click").ClickAsync();
我找到的唯一解决方案是搜索"text=Click here"
,但我想使用"routerlink"
关键字,因为文本将来可能会更频繁地更改。
这应该有效:Page.Locator("//button[@routerlink='/web/click']").ClickAsync();