使用selenium webdriver c#在文本框中输入值时面临问题

时间:2015-09-11 15:22:10

标签: javascript c# selenium-webdriver ui-automation

这可能是重复的问题,但我正面临这个问题而无法就此问题得到任何解决方案。 实际问题:     我必须使用selenium web driver c#在两个文本框中输入相同的数字。我已经尝试下面的代码在该文本框中输入随机生成的数字。在某些机器上,代码工作正常,但在某些虚拟机上,我无法输入数字,因为它失去焦点或者发生了某些事情。     因此,当我运行代码时,它会在第一个文本框中输入值,有时它会在第二个文本框中输入值。 第一次尝试://不工作面临与以下代码相同的问题

Keyboard.SendKeys(number);
Keyboard.SendKeys("{TAB}");
Keyboard.SendKeys(number);

第二次尝试://不工作面临与以下代码相同的问题

Driver.FindElement(By.Id("FirstTextBoxId").SendKeys(number);
Keyboard.SendKeys("{TAB}");
Driver.FindElement(By.Id("SecondTextBoxId").SendKeys(number);

第3次尝试://不工作面临与以下代码相同的问题 使用JavaScript输入值 第四次尝试://不工作面临与下面代码相同的问题 使用Auto It工具输入值 第5次尝试://不工作面临与以下代码相同的问题 尝试等待,然后进入 6th尝试://不工作面临与下面的代码相同的问题 首先点击第一个文本框

Driver.FindElement(By.Id("FIRSTTextBoxId").SendKeys(number);
Clicked into second text box
Driver.FindElement(By.Id("SecondTextBoxId").SendKeys(number);

在此,当我点击该文本框时,有时光标被设置在中间,因此没有输入完整的数字,即它跳过一些值和一半的数字。

注意:这两个文本框位于框架上,我可以成功切换到框架。我只在虚拟机上遇到此问题。 如果您查看附加的快照,那么您可能会获得该文本框控件。 enter image description here

提前感谢....

1 个答案:

答案 0 :(得分:0)

我有类似的问题,我的解决方案是:首先点击元素tben清除它。     Driver.FindElement(By.Id(" SecondTextBoxId"。)点击()     Driver.FindElement(By.Id(" SecondTextBoxId")清除()