一尘不染

如何通过Selenium和C#保留通过SendKeys()方法发送的字符序列

selenium

Selenium c#在“我的测试网站”的文本框中输入数据时,光标位置设置为“中”,并且输入的数据类似于 3421, 而不是正确的 1234

谁能建议一个很好的方法来解决这个问题?

我试图使用按HOME键,但没有用。


阅读 409

收藏
2020-06-26

共1个答案

一尘不染

在缺乏相关 HTML的 情况下,很难预测通过方法发送的 字符序列 的顺序顺序的持久性背后的实际问题。SendKeys() __

但是,如果 AUT(被测应用程序)
是基于JavaScriptAngularReactJS的,则根据_最佳实践, 您需要诱导 _WebDriverWait 来使所需 元素可单击 ,然后需要调用Clear()
方法,最后调用SendKeys()方法如下:

  • C#:
        IWebElement textBoxElement = new WebDriverWait(driver, TimeSpan.FromSeconds(10)).Until(ExpectedConditions.ElementToBeClickable(By.XPath("xpath_of_HOME_key_button")));
    textBoxElement.Click();
    textBoxElement.Clear();
    textBoxElement.SendKeys("1234");
2020-06-26