Java Selenium Webdriver,单击带有类的按钮
在Java中,如何单击带有类的按钮,而不带ID、XPath或类名?您可以使用此说明Java Selenium Webdriver,单击带有类的按钮,java,selenium,webdriver,Java,Selenium,Webdriver,在Java中,如何单击带有类的按钮,而不带ID、XPath或类名?您可以使用此说明 driver.findElement(By.cssSelector("input[type='button']")).click(); 作为XPath: //div[@class='T-I J-J5-Ji T-I-KE L3'] 您可以通过用xpath driver.findElement(By.xpath("//div[contains(text(), 'COMPOSE')]")).click(); 或使
driver.findElement(By.cssSelector("input[type='button']")).click();
作为XPath:
//div[@class='T-I J-J5-Ji T-I-KE L3']
您可以通过
用xpath
driver.findElement(By.xpath("//div[contains(text(), 'COMPOSE')]")).click();
或使用css选择器
driver.findElement(By.cssSelector("div:contains('COMPOSE')")).click();
不起作用:(,我需要在登录后单击GMAIL中的合成按钮。你能提取该按钮的html代码以便我们定义一个工作选择器或合成吗?也许你可以尝试driver.findelelement(By.cssSelector(“div[role='button']”)。click();是的,它在单击,但不是合成按钮,它在单击线程中的搜索按钮异常“main”org.openqa.selenium.InvalidSelectorException:给定的选择器div:contains('COMPOSE'))无效或未导致WebElement。发生以下错误:InvalidSelectorError:指定了无效或非法的选择器命令持续时间或超时:11.21seconds@Ram4Automation我在答案中修正了它,忘记了/
。虽然这段代码可以回答这个问题,但最好包含一些上下文,例如解释它是如何工作的以及何时使用它。从长远来看,只使用代码的答案是没有用的。你能澄清一下“单击带有类的按钮,而不带…类名”是什么意思吗
WebElement composeBtn = driver.findElement(By.xpath("//*[@class='T-I J-J5-Ji T-I-KE L3']"));
JavascriptExecutor executor = (JavascriptExecutor)driver;
executor.executeScript("arguments[0].click();", composeBtn);