我实现sendkey的方式有问题吗



为什么sendkeys在这里不起作用?

我正在练习的网站是https://www.cineplex.com/

@Test 
public void testLogin() {
driver.manage().window().maximize();
driver.navigate().to("https://www.cineplex.com/");
driver.findElement(By.id("meta-nav-menu--account")).click();
driver.findElement(By.id("login")).click(); // work up to here

driver.findElement(By.xpath("//*[@id='txtEmailAddress']")).sendKeys("radsfsad"); // username login
driver.findElement(By.xpath("//*[@id="txtPassword"]")).sendKeys("afdsa");// pass login

}

输入电子邮件的检查代码

语法似乎不正确,您可以尝试:

driver.findElement(By.id("txtEmailAddress")).sendKeys("radsfsad");
driver.findElement(By.id("txtEmailAddress")).sendKeys("afdsa");

driver.findElement(By.xpath("//input[@id='txtEmailAddress']")).sendKeys("radsfsad"); // username login
driver.findElement(By.xpath("//input[@id='txtPassword']")).sendKeys("afdsa");// pass login

您可以使用explicitwait

import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;
WebDriverWait wait = new WebDriverWait(driver,Duration.ofSeconds(20));
wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("txtEmailAddress"))).sendKeys("Youlrogin");
wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("txtPassword"))).sendKeys("YourPassword")

我无法访问url,所以请确保没有iframe,如果是iframe的话,你必须首先将switch()发送到框架,然后使用上面的语句

最新更新