在Selenium Webdriver上,无法单击按钮

在Selenium Webdriver上,无法单击按钮,selenium,webdriver,Selenium,Webdriver,两条线都不工作 我也尝试过使用类名: d.findElement(By.xpath("//*[@id='view-list']/div[1]/a[1]")).click(); d.findElement(By.xpath("//*[@id='view-list']/div[1]/a[1]")).submit(); 这也不起作用请尝试使用此xpath://a[.=添加联系人] 确保你们之间有确切的文本链接,包括空格。你会犯什么样的错误?并向我们展示完整的html 确保您尝试单击的元素是可见的bc

两条线都不工作

我也尝试过使用类名:

d.findElement(By.xpath("//*[@id='view-list']/div[1]/a[1]")).click();
d.findElement(By.xpath("//*[@id='view-list']/div[1]/a[1]")).submit();

这也不起作用

请尝试使用此xpath://a[.=添加联系人]
确保你们之间有确切的文本链接,包括空格。你会犯什么样的错误?并向我们展示完整的html

确保您尝试单击的元素是可见的bcoz,存在的元素可能返回true,但可见性可能返回false

如果要查找的元素可见,则可以尝试以下代码

可以使用相对XPath根据值查找元素

d.findElement(By.classname("btn right")).click();
或者使用CSS选择器


//td[class='btn right'][value='Add Contact']

请试试这个-应该可以:

//a[contains(text(), 'Add Contact')]

向我们展示你的html。检查按钮是否可见或是否在应用程序中实际存在“添加联系人”按钮…如果我使用Xpath和类名单击该按钮…两者都不起作用,,,,在selenium web驱动程序中出现此错误无法找到元素位置使用css/Xpath/linktext等标识符没有问题,正如您在其他答案中所看到的,但是元素可见性在本文中最为重要。OP是否讲述了元素可见性?那完全是你的意见。我很惊讶,如果partialLinkText能够找到按钮,那么css选择器/xpath的相对路径应该可以找到。因此,尝试partialLinkText是没有意义的,它与其他答案是一样的partialLinkText有时在css/xpath不起作用的地方起作用。我在OP的代码上试了一下,它确实起了作用。那么,你对你的“意见”仍然感到惊讶。你相信吗?还是你试过OP的密码?它起作用了吗?
//a[contains(text(), 'Add Contact')]
    d.findElement(By.partialLinkText("Add Contact")).click();