Передача параметров Driver.Instance.FindElement в качестве переменной - PullRequest
0 голосов
/ 21 февраля 2019

Как указать «By.Xpath» в качестве переменной в

Driver.Instance.FindElement ( Переменное имя (ClickAt)). SendKeys (ScrollTimeString);

Я вызываю функцию, которая будет иметь параметр «Searchby», который будет находить элементы на основе переданных аргументов.Я не хочу жестко кодировать его, как

, если Variable = By.Xpath, затем Driver.Instance.FindElement (By.Xpath (ClickAt)). SendKeys (ScrollTimeString);

Если переменная = By.id затем Driver.Instance.FindElement (By.ID (ClickAt)). SendKeys (ScrollTimeString);

1 Ответ

0 голосов
/ 21 февраля 2019

Вы можете создать универсальный метод и передать тип идентификатора и путь в этом методе и можете вернуть веб-элемент в соответствии с переданным типом идентификатора.

Например:

public WebElement getElement(String identifierType, String pathExpression){
switch(identifierType){
    case "xpath":
            return driver.findElement(By.xpath(pathExpression));

    case "id":
            return driver.findElement(By.id(pathExpression));

    case "tagname":
            return driver.findElement(By.tagName(pathExpression));

    default:
            return driver.findElement(By.xpath(pathExpression));
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...