Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Selenium Webdriver,单击带有类的按钮_Java_Selenium_Webdriver - Fatal编程技术网

Java Selenium Webdriver,单击带有类的按钮

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(); 或使

在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();
或使用
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);