如何使用命令sendKeys(Keys.TAB)和sendKeys("text")填充列中的几个字段。例如:我们在页面底部有3个表单中的“联系人”字段:
我已经将页面滚动到"Name“字段,并填写了"Name”、TAB,并希望通过使用sendKeys(Keys.TAB) (电子邮件)填充下一个字段(电子邮件)中的另一个文本--这是我如何尝试的:
WebElement element = driver.findElement(By.cssSelector("#contact > div > div.main > div.form-block"));
((JavascriptExecutor) driver).executeScript("arguments[0].scrollIntoView(true);", element);
WebElement webElement = driver.findElement(By.xpath("//*[@id=\"edit-submitted-name\"]"));
webElement.sendKeys("Name");
webElement.sendKeys(Keys.TAB);
webElement.sendKeys("email");
webElement.sendKeys(Keys.TAB);
webElement.sendKeys("Message");但是它填充了第一个字段中的所有文本,因为webElement移到了第一个字段("Name")。
我知道,我可以使用driver.FindElement(By.xpath(## next field ##)).sendKeys("text");,但我需要准确地使用TAB按钮进行测试。也许在Java中存在命令,在焦点字段中键入文本?我找不到了。
发布于 2019-06-16 21:48:44
您必须使用Selenium的Action类,并创建一系列要使用选项卡的操作。还可以通过单击选项卡手动尝试所有步骤。有时标签不能在网页上工作。
https://stackoverflow.com/questions/56621905
复制相似问题