Какая альтернатива методу java Keys.chord () в C #? - PullRequest
1 голос
/ 25 сентября 2019

Я новичок в C # и не могу удалить некоторое содержимое текстового поля с помощью команды Selenium Clear.В такой ситуации я пробовал приведенную ниже команду, когда работал на Java.

webelement.sendKeys(Keys.chord(Keys.CONTROL,"a", Keys.DELETE)); 

Сейчас в C # команда chord недоступна.

Я прошел класс Keys, найдите ссылку https://seleniumhq.github.io/selenium/docs/api/java/org/openqa/selenium/Keys.html и считаю, что аккорда нет в C #.Есть ли у нас альтернатива для выполнения той же операции.Я могу удалить входные данные из текстового поля, используя JavaScript, но как мне добиться одновременного нажатия нескольких клавиш в C #.

В настоящее время используется этот подход с использованием JavaScript

    public static void clearTextboxContentUsingJS(IWebDriver driver, IWebElement element)
    {
        ((IJavaScriptExecutor)driver).ExecuteScript("arguments[0].value ='';", element);
    }

1 Ответ

0 голосов
/ 25 сентября 2019

Вы можете попробовать нажать Keys.Backspace в цикле и посмотреть, поможет ли это.

var length = element.GetAttribute("value").Length;

for (int i = 0; i < length; i++)
{
    webElement.SendKeys(Keys.Backspace);
    Thread.Sleep(100);
}

Кроме того, я знаю, что вы пробовали Keys.CONTROL + "a" + Keys.DELETE.Я пробовал это решение в прошлом, но разбил его на отдельные строки, так что, возможно, стоит попробовать:

webElement.SendKeys(Keys.Control + "a");
webElement.SendKeys(Keys.Delete);
...