Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/328.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 有效的xpath不起作用_Java_Selenium_Selenium Webdriver - Fatal编程技术网

Java 有效的xpath不起作用

Java 有效的xpath不起作用,java,selenium,selenium-webdriver,Java,Selenium,Selenium Webdriver,我在用 driver.findElement(By.xpath("(//A[@href='/BLBP/custNewHome'][text()='New Customer']")).click(); 我要检查路径值是否正确 但它不起作用了我现在能做什么 输出: 这是一个下拉菜单 driver.findElement(By.xpath(//A[@href='/BLBP/custNewHome'][text()='newcustomer']) 仔细观察并逐个去掉括号。首先是findElement

我在用

driver.findElement(By.xpath("(//A[@href='/BLBP/custNewHome'][text()='New Customer']")).click();
我要检查路径值是否正确

但它不起作用了我现在能做什么

输出: 这是一个下拉菜单

driver.findElement(By.xpath(//A[@href='/BLBP/custNewHome'][text()='newcustomer'])

仔细观察并逐个去掉括号。首先是
findElement
方法调用

By.xpath((//A[@href='/BLBP/custNewHome'][text()='newcustomer'])

接下来是
xpath
调用

“(//A[@href='/BLBP/custNewHome'][text()='newcustomer']”

剩下的字符串是xpath表达式。请注意,它的开头有一个开括号,但结尾没有右括号。这就是问题所在

使用以下命令:

“//A[@href='/BLBP/custNewHome'][text()='newcustomer']”

或者这个:


“(//A[@href='/BLBP/custNewHome'][text()='newcustomer'])”

如果您的
xpath
正确,请在给定步骤之前放置一些
等待
。否则共享html代码它无效。您如何检查它?
/*[contains(text(),'newcustomer')]
这将起作用。如果您共享html代码以获得精确的
xpath,那将是一件好事。屏幕截图中的xpath与代码中的xpath不同。正如@G_H的回答所示。这是我们在某个时候都犯过的错误,但下次您可能会从重复检查代码中获益,省去询问的麻烦如此看来,您的xpath被破坏了。似乎有额外的括号。@TanmoyRay我看不出我能给出这个答案的完整程度。您有一个括号,
东西,xpath开头太多了。请删除它,或者添加一个
最后。我是新手,我想点击这个元素我现在能做什么?@TanmoyRay你能做的正是我说的:修复你不正确的xpath,它在语法上是无效的,因为它有不匹配的括号。这是一个开括号:
这是一个闭括号:
。xpath开头有一个open,但结尾没有相应的close。可以添加右括号,也可以删除该open。请告诉我,这是最基本的编程知识,所以我不必再详细解释了。谢谢,我省略了这些括号:(对不起)