Selenium webdriver:列表不是通用的;不能使用参数<WebElement>类型进行参数化

Gau*_*ngh 1 java selenium selenium-webdriver

我试图将链接存储在列表中,请遵循以下代码

public class frameswitch {

public static void main(String[] args) {

    System.setProperty("webdriver.gecko.driver","C:\\geckodriver\\geckodriver.exe");  
    WebDriver driver=new FirefoxDriver();
    String baseUrl="https://www.udacity.com/";
    driver.get(baseUrl);
    String Title="Udacity - Free Online Courses and Nanodegree Programs";
    List<WebElement> linkElements = driver.findElements(By.tagName("a"));
    }
}
Run Code Online (Sandbox Code Playgroud)

但是在使用列表时面临错误

List类型不是通用的;无法使用参数<WebElement>类型对其进行参数化

Deb*_*anB 5

这是您的问题的答案:

错误说明了一切The type List is not generic; it cannot be parameterized with arguments <WebElement> type。这意味着当您在中配置Listas时List<WebElement> linkElements,意外地java.awt.List是从未定义的地方导入它。因此,错误。

以下屏幕截图显示了所有内容:

在此处输入图片说明

解:

作为一种解决方案,我使用了自己的代码导入java.util.List而不是,java.awt.List并且您的代码块也可以正常工作:

package demo;

import java.util.List;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;

public class Q45402867_tagname_a {

    public static void main(String[] args) {
        System.setProperty("webdriver.gecko.driver","C:\\Utility\\BrowserDrivers\\geckodriver.exe");  
        WebDriver driver=new FirefoxDriver();
        String baseUrl="https://www.udacity.com/";
        driver.get(baseUrl);
        String Title="Udacity - Free Online Courses and Nanodegree Programs";
        List<WebElement> linkElements = driver.findElements(By.tagName("a"));
        System.out.println(linkElements.size());
        for (WebElement ele:linkElements)
        System.out.println(ele);
    }

}
Run Code Online (Sandbox Code Playgroud)

控制台上的输出为:

86
[[FirefoxDriver: firefox on ANY (ef81931f-9530-4998-8405-6581ab51c86e)] -> tag name: a]
...  84 more ...
[[FirefoxDriver: firefox on ANY (ef81931f-9530-4998-8405-6581ab51c86e)] -> tag name: a]
Run Code Online (Sandbox Code Playgroud)

让我知道这是否回答了您的问题。