【解決方法】Selenium C#はdiv内の要素を選択します


こんにちは、UIで次のようにバインドされた場所を選択しています

<div class="choices form-group form-choices" data-type="select-one" dir="ltr" tabindex="-1" role="listbox" aria-haspopup="true" aria-expanded="false">
 <div class="form-control ui fluid selection dropdown" tabindex="0">
  <select lang="en" class="form-control choices__input" type="text" name="data[serviceAmpsDelivered]" ref="selectContainer" dir="ltr" hidden="" tabindex="-1" data-choice="active">
   <option value="6"><span>60</span></option>
  </select>
  <div class="choices__list choices__list--single">
   <div class="choices__item choices__item--selectable" data-item="" data-id="38" data-value="6" data-custom-properties="null" aria-selected="true" data-deletable="">
    <span>60</span>
    <button type="button" class="choices__button" aria-label="Remove item: '6'" data-button="">Remove item</button>
   </div>
  </div>
 </div>
 <div class="choices__list choices__list--dropdown" aria-expanded="false">
  <div class="choices__list" role="listbox">
   <div id="choices--data-oa-item-choice-1" class="choices__item choices__item--choice choices__item--selectable is-highlighted" role="option" data-choice="" data-id="1" data-value="1" data-select-text="" data-choice-selectable="" aria-selected="true">
    <span>50</span>
   </div>
   <div id="choices--data-oa-item-choice-2" class="choices__item choices__item--choice choices__item--selectable " role="option" data-choice="" data-id="2" data-value="6" data-select-text="" data-choice-selectable="">
    <span>60</span>
   </div>
   <div id="choices--data-oa-item-choice-3" class="choices__item choices__item--choice choices__item--selectable " role="option" data-choice="" data-id="3" data-value="2" data-select-text="" data-choice-selectable="">
    <span>100</span>
   </div>
   <div id="choices--data-oa-item-choice-4" class="choices__item choices__item--choice choices__item--selectable " role="option" data-choice="" data-id="4" data-value="5" data-select-text="" data-choice-selectable="">
    <span>150</span>
   </div>
   <div id="choices--data-oa-item-choice-5" class="choices__item choices__item--choice choices__item--selectable " role="option" data-choice="" data-id="5" data-value="3" data-select-text="" data-choice-selectable="">
    <span>200</span>
   </div>
   <div id="choices--data-oa-item-choice-6" class="choices__item choices__item--choice choices__item--selectable " role="option" data-choice="" data-id="6" data-value="4" data-select-text="" data-choice-selectable="">
    <span>400</span>
   </div>
  </div>
 </div>

div を選択でき、ドロップダウンが開かれますが、項目を選択できません

WebElement srvcAmpsDelivered = (WebElement)driver.FindElement(By.XPath("//select[contains(@name,'data[serviceAmpsDelivered]')]"));
            Helper.JavaScriptClick(driver, srvcAmpsDelivered);

しかし、div内にあるアイテムを選択することはできません. このように動作しますが、値を変更したい場合はN回コーディングする必要があります

私が試したこと:

Actions act = new Actions(_driver); act.SendKeys(Keys.Down).Perform(); act.SendKeys(Keys.Down).Perform(); Thread.Sleep(1000); act.SendKeys(Keys.Enter).Perform();`

解決策 1

私は簡単なグーグル検索をしました: Selenium C#はdiv内の要素を選択します[^] 最初の結果は次のとおりです。 Selenium C#はdiv内の要素を選択します[^]. そうでない場合は、もっと答えがあります

コメント

タイトルとURLをコピーしました