Как выбрать значение из углового раскрывающегося списка в C # с селеном - PullRequest
0 голосов
/ 03 июня 2019

Я пытаюсь выбрать значение из углового раскрывающегося списка.Когда я нажимаю стрелку выпадающего меню, становится доступной опция «Сделать основной контакт», которую я хочу щелкнуть, используя Selenium WebDriver и C #

. Я попробовал следующие

.SendKeys (Ключи.ArrowDown)

Также я попытался найти элемент с помощью XPath, но, поскольку он динамический, он тоже не работает.

Вот HTML

<section>
<div class="entry-box">
    <input class="inv-input" [ngModel]="value?.ItemValue" (ngModelChange)="updatePhoneNumber($event)"/>

     <div class="caret-container" (click)="toggleDropDown()">
        <span *ngIf="value?.IsPrimary">{{'contactDetailsTab.selectedPrimaryLabel' | translate}}</span>
        <img class="select-icon" src="/assets/app/caret-dark.svg">
    </div> 
</div>
<ng-container *ngIf="showDropDown">
    <div  class="dropdown-container">
        <ul #dropDown tabIndex="-1" class="dropdown" (blur)="onBlur()">
            <li *ngIf="!value?.IsPrimary" (mousedown)="setPrimary(true)">{{'contactDetailsTab.makePrimaryContact' | translate}}</li>
            <li *ngIf="value?.IsPrimary" (mousedown)="setPrimary(false)">{{'contactDetailsTab.removePrimaryContact' | translate}}</li>
        </ul>
    </div>
</ng-container>
</section>

Ответы [ 2 ]

1 голос
/ 14 июня 2019

Я использую функцию SelectElement Selenium:

new SelectElement(driver.FindElement(By.Xpath("your Xpath here"))).SelectByText("Make Primary Contact");

Здесь у вас есть дополнительная информация о SelectElement

Это лучший способ справиться с выпадающими списками и проверить значения внутри. Вы также можете выбрать SelectByIndex или любой другой, более подходящий для вас.

0 голосов
/ 03 июня 2019

Это сработало для меня

driver.FindElement(By.XPath("//li[contains(., 'Make Primary Contact')]"));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...