更新:HTMLコードで利用可能なオプションの例をクリックできるようにしたい。2つのオプションがあります(id = "all_setup_home"とid = "developer-console-link")。現在、私が利用しているXPathはドロップダウンをクリックしてランダムにクリックし、オプション1ページに移動します(これが私が望むものです)が、XPathはオプション1または2ではなくドロップダウンをターゲットにしているため、あまり動的ではありません。したがって、2番目のオプションをクリックしたい場合は、クリックできません。
これより良いものは大歓迎です。
現在機能している回避策:
getElementByXPath("Settings").click();
Thread.sleep(3000);
driver.findElement(By.xpath("//ul[contains(@class,'scrollable')]")).click();
まだ機能していない最初の作業:
<!-- begin snippet: js hide: false console: true babel: false -->
HTML
<div class="popupTargetContainer menu--nubbin-top uiPopupTarget uimenuList uiMenuList--right uimenuList--default visible positioned" data-aura-rendered-by="101:185;a" data-aura-class="uiPopupTarget uimenuList uimenuList--right uimenuList--default" aria-labelledby="59:185;a">
::before
<div role="menu" data-aura-rendered-by="95:184;a">
<!--render facet:96:184;a-->
<ul class="scrollable" role="presentation" data-aura-rendered-by="97:184;a">
<!--render facet: 816:0-->
<!--render facet: 882:0-->
<li class="slds-dropdown__item uiMenuItem onesetupSetupMenuItem" role="presentation" id="all_setup_home" data-aura-rendered-by="893:0" data-aura-class="uiMenuItem onesetupSetupMenuItem">....</li>
<!--render facet:826:0-->
<!--render facet:2004:0-->
<li class="slds-dropdown__item uiMenuItem onesetupSetupMenuItem" role="presentation" id="developer-console-link" data-aura-rendered-by="893:0" data-aura-class="uiMenuItem onesetupSetupMenuItem">....</li>
<!--render facet:826:0-->
<!--render facet:2004:0-->
したがって、この要素からXPathを取得する最初のオプションをクリックすることができました。
driver.findElement(By.xpath("//ul[contains(@class,'scrollable')]")).click();
ただし、2番目のオプションをクリックできないため、これはあまり動的ではありません。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加