簡體   English   中英

如何驗證鏈接並在Selenium Webdriver Java中單擊鏈接

[英]How to verify links and click on them in Selenium webdriver Java

我是硒新手。 我在頁面上有具有相似xpath的相似鏈接(比方說鏈接1到30)。 我需要驗證所有這些元素是否都在頁面上(我希望硒為每個元素打印類似“此元素存在1”之類的東西)並且它們都是可單擊的(將打開新頁面)。 到目前為止,我已經有了這段代碼來單擊所有鏈接,並打印其標題:

    driver.get("http://anysite.com");
    String part1=".//*[@id='footer']/div/div[1]/div[2]/ul/li[";
    String part2="]/a";
    for (int i=1;i<=30;i++){
    String text = driver.findElement(By.xpath(part1+i+part2)).getText();
    System.out.println(text);
    driver.findElement(By.xpath(part1+i+part2)).click();
    System.out.println(driver.getTitle());
    driver.get("http://anysite.com");

另外,我有以下代碼可以分別驗證每個單獨的鏈接的存在(如果我有30個鏈接,則必須將此代碼重復30次):

    if(driver.findElements(By.xpath(".//*[@id='footer']/div/div[1]/div[2]/ul/li[1]/a")).size() != 0){
      System.out.println("Element Link 1 is Present");
      }else{
      System.out.println("Element Link 1 is Absent");
      }

到目前為止,我有兩個測試用例,是否有任何方法可以將這兩部分組合成一個不錯的部分? 謝謝!

在字符串1中,您將xpath用作:

String part1=".//*[@id='footer']/div/div[1]/div[2]/ul/li[";

而應該是:

String part1="//*[@id='footer']/div/div[1]/div[2]/ul/li[";

您需要刪除點“。” 從您的xpath。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM