我们可以使用Web驱动程序来测试https:// sites吗?我正在尝试在gmail.com上工作,但它不起作用

时间:2012-11-20 11:18:13

标签: java selenium automated-tests selenium-webdriver

import java.util.concurrent.TimeUnit;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.remote.DesiredCapabilities;

public class MyFirstSelTest {


    public static void main(String args[]){

        WebDriver driver = new FirefoxDriver();

        driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);

        driver.get("http://www.gmail.com/");

        WebElement un = driver.findElement(By.id("Email"));
        WebElement pwd = driver.findElement(By.id("Passwd"));
        WebElement submitBtn = driver.findElement(By.id("wp-signIn"));

        un.sendKeys("ValidUsername");
        pwd.sendKeys("ValidPassword");
        submitBtn.click();

        driver.quit();
    }
}

Gmail主页已打开,但未在用户名和密码字段中输入任何数据。有人可以帮我解决一下我们需要做些什么吗?

谢谢, 麦克

2 个答案:

答案 0 :(得分:1)

我没有遇到问题的原因是提交按钮:

尝试替换为:WebElement submitBtn = driver.findElement(By.id("signIn"));您没有正确识别提交按钮。

答案 1 :(得分:1)

尝试使用以下定位器。

driver.findElement(By.cssSelector("div.email-div>input[id='Email']")).sendKeys(Email);
driver.findElement(By.cssSelector("div.passwd-div>input[id='Passwd']")).sendKeys(Email);
driver.findElement(By.id("signIn")).click();