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
Selenium Webdriver Java can';t单击<;a>;链接_Java_Selenium - Fatal编程技术网

Selenium Webdriver Java can';t单击<;a>;链接

Selenium Webdriver Java can';t单击<;a>;链接,java,selenium,Java,Selenium,我有一个问题,我的测试用例如下: 打开网站whois.net 键入sitename并单击“搜索”按钮 但是我的测试无法点击。我不明白为什么 这是我的代码(也许你可以给我一些建议): 我得到了下一个错误: org.openqa.selenium.NoSuchElementException: no such element: Unable to locate element: {"method":"css selector","selector":"div#hdSearch span input

我有一个问题,我的测试用例如下:

  • 打开网站
    whois.net
  • 键入sitename并单击“搜索”按钮
  • 但是我的测试无法点击。我不明白为什么

    这是我的代码(也许你可以给我一些建议):

    我得到了下一个错误:

    org.openqa.selenium.NoSuchElementException: no such element: Unable to locate element: {"method":"css selector","selector":"div#hdSearch span input a"}
    

    首先查看whois.net有助于了解您需要更清晰的选择器来链接,XPATH如下所示:

    /html/body/form/div[5]/div[2]/div[1]/div[1]/table/tbody/tr/td/a

    因此,请尝试:

     WebElement registerButton = driver.
                findElement(
                        By.xpath("/html/body/form/div[5]/div[2]/div[1]/div[1]/table/tbody/tr/td/a")
                    );
     registerButton.click();
    

    要找到搜索按钮并单击它,可以使用以下代码块:

    WebElement registerButton = driver.findElement(By.cssSelector("div#searchBox a"));
    registerButton.click();
    

    我不知道你正在查看的页面的HTML是什么,但是我得到的whois.net页面没有,如果你想搜索元素,你需要这个选择器:div#searchBox table tbody tr td:第一个像这样的类型aTry
    driver.findelelement(By.cssSelector(“#domain\u search+a”)
    ,谢谢,伙计,但若元素并没有ID该怎么办?我正试图用你们的例子在页面上找到另一个元素,但ID对我不起作用。这是我的代码WebElement elContactEmail=driver.findElement(By.xpath(“/html/body/#page/div/div/div/div/div/div/ul/ul/li/a.mail”);字符串contactEmail=elContactEmail.getText();System.out.println(联系人电子邮件);
    WebElement registerButton = driver.findElement(By.cssSelector("div#searchBox a"));
    registerButton.click();