ねえ、私は分度器e2eテストでこの問題を抱えています:
サブメニュー付きのメニューがあります。メニューとサブメニューには、内部のボタンと同じ名前のテキストがあります(メニューに1つ、サブメニューに1つ)。たとえば、「menuItem」という名前を付けることができます。メニューの最初の「menuItem」を見つけてクリックする方法は知っていますが、サブメニューの「menuItem」をクリックする方法が見つかりません。ロケーターby.buttonTextを使用して、メニューの最初の「menuItem」を検索しています。両方のボタンには同じcssクラスがあります。私はAngularから基本的なmatMenuを使用しています。
誰かがこれを手伝ってくれる?
<button mat-button [matMenuTriggerFor]="menu">Menu</button>
<mat-menu #menu="matMenu">
<button mat-menu-item>Menu</button>
</mat-menu>
コードがこのようなものである場合は、次を使用できます。element.all(by.buttonText('Menu')).last().click()
この行の前にbrowser.sleep(1000)を指定して、分度器がそれをキャプチャできることを確認できます。
ただし、同じ名前のオプションが複数ある場合は、「id」のような一意のものを定義するか、XPathを使用する必要があります。お役に立てば幸いです。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加