页面加载完成后,将弹出一个窗口。此弹出窗口有一个“登录”按钮。单击此“登录”按钮后,出现一个登录对话框。在这里,我有两个文本框,一个用于用户名,一个用于密码。但是,我无法在这些文本框中输入用户名/密码。 请提出建议。 以下是我正在使用的演示站点的链接: http://way2automation.com/way2auto_jquery/draggable.php
我也尝试过使用wait方法,以防网页加载花费更多时间。但是,即使那样也没有用。 我还尝试使用Action类在文本框内单击。我可以在其中单击,但不能输入文本。
public static void main(String[] args) throws InterruptedException {
System.setProperty("webdriver.chrome.driver","C:\\Users\\a638081\\Selenium_downloads\\chromedriver_win32\\chromedriver.exe");
WebDriver dr=new ChromeDriver();
WebDriverWait wait=new WebDriverWait(dr,7);
Actions action=new Actions(dr);
dr.manage().window().maximize();
dr.get("http://way2automation.com/way2auto_jquery/draggable.php");
dr.findElement(By.xpath("//div[@id='load_box']/form/div/div[1]/p/a")).click();
WebElement login=dr.findElement(By.xpath("//div[@class='fancybox-skin']/div/div/div/form/fieldset/input[@name='username']"));
wait.until(ExpectedConditions.visibilityOf(login));
Action act=action.click(login).build();
act.perform();
login.sendKeys("aaa");
dr.findElement(By.xpath("//div[@class='fancybox-skin']/div/div/div/form/fieldset/input[@name='password']")).sendKeys("aaa");
dr.findElement(By.xpath("//div[@class='fancybox-outer']/div[1]/div[1]/form/div/div[2]/input")).click();