Java 在gmail selenium中搜索并选中结果复选框
嗨,我一直在尝试使用SeleniumJava检查gmail中搜索到的任何内容的复选框。如果我不在gmail中搜索,这个循环就是迭代。若我在gmail中搜索某个东西,那个么循环并不是迭代的。它的给定错误元素不可见异常 请帮帮我 这是我的密码Java 在gmail selenium中搜索并选中结果复选框,java,selenium,selenium-webdriver,webdriver,Java,Selenium,Selenium Webdriver,Webdriver,嗨,我一直在尝试使用SeleniumJava检查gmail中搜索到的任何内容的复选框。如果我不在gmail中搜索,这个循环就是迭代。若我在gmail中搜索某个东西,那个么循环并不是迭代的。它的给定错误元素不可见异常 请帮帮我 这是我的密码 public class gmail { private WebDriver driver; @Before public void setUp() throws Exception { driver = new FirefoxDriver();
public class gmail {
private WebDriver driver;
@Before
public void setUp() throws Exception {
driver = new FirefoxDriver();
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
}
@Test
public <checkboxes> void test() throws Exception {
driver.get("https://accounts.google.com/ServiceLogin?service=mail&passive=true&rm=false&continue=https://mail.google.com/mail/&ss=1&scc=1<mpl=default<mplcache=2&emr=1&osid=1#identifier");
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
WebElement email = driver.findElement(By.xpath("//*[@id='Email']"));
email.click();
email.sendKeys("^&^&^$^$&$*&@gmail.com");
WebElement next = driver.findElement(By.xpath("//*[@id='next']"));
next.click();
WebElement password = driver.findElement(By.xpath("//*[@id='Passwd']"));
password.sendKeys("87837876&*&*");
WebElement signin = driver.findElement(By.xpath("//*[@id='signIn']"));
signin.click();
driver.manage().timeouts().implicitlyWait(50, TimeUnit.SECONDS);
WebDriverWait wait = new WebDriverWait(driver, 60);
wait.until(ExpectedConditions.elementToBeClickable(By.xpath("/html/body/div[7]/div[3]/div/div[1]/div[4]/div[1]/div[1]/div[3]/div/div/div/form/fieldset[2]/div/div/div[2]/table/tbody/tr/td/table/tbody/tr/td/div/input[1]")));
WebElement search = driver.findElement(By.xpath("/html/body/div[7]/div[3]/div/div[1]/div[4]/div[1]/div[1]/div[3]/div/div/div/form/fieldset[2]/div/div/div[2]/table/tbody/tr/td/table/tbody/tr/td/div/input[1]"));
search.click();
search.sendKeys("sample");
search.sendKeys(Keys.ENTER);
Thread.sleep(1000);
List<WebElement> checkBox= driver.findElements(By.xpath("//*[@role='checkbox']"));
for(int i=1; i<=checkBox.size(); i=i+1){
checkBox.get(i).click();
System.out.println(checkBox);
}
}
}
公共类gmail{
私有网络驱动程序;
@以前
public void setUp()引发异常{
驱动程序=新的FirefoxDriver();
driver.manage().timeouts().implicitlyWait(30,TimeUnit.SECONDS);
}
@试验
public void test()引发异常{
驱动程序。获取(“https://accounts.google.com/ServiceLogin?service=mail&passive=true&rm=false&continue=https://mail.google.com/mail/&ss=1&scc=1<mpl=default<mplcache=2&emr=1&osid=1#identifier");
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(30,TimeUnit.SECONDS);
WebElement email=driver.findElement(By.xpath(“/*[@id='email']);
email.click();
email.sendKeys(“^&^&^$^$&$*&@gmail.com”);
WebElement next=driver.findElement(By.xpath(“/*[@id='next']”);
下一步。单击();
WebElement password=driver.findElement(By.xpath(“/*[@id='Passwd']);
password.sendKeys(“87837876&*&*”);
WebElement signin=driver.findElement(By.xpath(“/*[@id='signin']);
sign.click();
driver.manage().timeouts().implicitlyWait(50,TimeUnit.SECONDS);
WebDriverWait wait=新的WebDriverWait(驱动程序,60);
wait.until(ExpectedConditions.elementtobelicable(By.xpath(“/html/body/div[7]/div[3]/div/div[1]/div[1]/div[1]/div[3]/div/div/form/fieldset[2]/div/div/div[2]/table/tbody/tr/td/table/tbody/tr/td/div/input[1]”);
WebElement search=driver.findElement(By.xpath(“/html/body/div[7]/div[3]/div/div[1]/div[1]/div[1]/div[3]/div/div/div/form/fieldset[2]/div/div/div/div[2]/table/tbody/tr/td/table/tbody/tr/td/div/input[1]”);
搜索。单击();
search.sendKeys(“示例”);
search.sendKeys(key.ENTER);
睡眠(1000);
List checkBox=driver.findElements(By.xpath(“/*[@role='checkBox']);
对于(int i=1;iYou正在使用一个长xpath,xpath有时会给出类似的错误。而不是使用id或css。1.Java中的类以大写字母开头。2.假设您没有测试Gmail,您最好使用它。您正在使用一个长xpath,xpath有时会给出类似的错误。而不是使用id或css.1.Classe在Java中,s以大写字母开头。2.假设您不是在测试Gmail,那么最好使用它。