выбрав значение из выпадающего списка Combobox, используя селен и c # - PullRequest
0 голосов
/ 10 сентября 2018

Я работаю над автоматизацией приложения с селеном и c #. Как выбрать значение из выпадающего списка?

HTML код:

<div ng-class="{deleted: row.entity.isDeleted, dirty: row.entity.isDirty()}" <div="" ng-repeat="col in colContainer.renderedColumns track by col.colDef.name" class="ui-grid-cell ng-scope ui-grid-coluiGrid-000T dirty editable" ui-grid-cell="" tabindex="-1" aria-selected="true">
                        <div class="ui-grid-cell-contents ng-binding ng-scope ui-grid-cell-focus ui-grid-cell-contents-hidden">Medicare Advantage Plan</div><div ng-class="{deleted: row.entity.isDeleted, dirty: row.entity.isDirty()}" class="ng-scope dirty">

Я попробовал приведенный ниже код, и он не работает.

_context.WebDriver.FindElement(By.XPath("//div[@class='ui-grid-row ng-scope'][" + (i) + "]/div/div[3]")).SendKeys("Medicare Advantage Plan");

1 Ответ

0 голосов
/ 11 сентября 2018

Вам необходимо создать список элементов раскрывающегося элемента, а затем по индексу вы можете получить к ним доступ. Для создания списка вам нужно проверить выпадающие элементы и найти общий элемент, такой как id / name / xpath. Я сделал что-то похожее на Java, надеюсь, это поможет.

public void getList_ByXpath(String element, int list_index_to_click) {
        try {
            getWait().until(ExpectedConditions.visibilityOfElementLocated(By.xpath(element)));
            WebElement web_el = getDriver().findElement(By.xpath(element));
            Select select = new Select(web_el);
            List<WebElement> option = select.getOptions();
            option.get(list_index_to_click).click();
        } catch (Exception e) {

        }
    }

Вам необходимо создать WebElement, который будет искать элементы на основе общего идентификатора, затем создается список, и вы выполняете необходимое действие на основе индекса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...