Selenium WebDriver:我如何随机选择链接?

时间:2014-03-31 16:54:16

标签: java selenium selenium-webdriver

我需要在网站上自动登录,然后从链接列表中随机选择链接。每次测试运行后,应从列表中随机选择新链接。 我已经自动登录了:

public class Test1{
  public static void main(String[] args)
    String path = System.getProperty("user.dir");
    System.out.println(path);
    System.setProperty("webdriver.chrome.driver",System.getProperty("user.dir")+"\\ChromeDriver\\chromedriver.exe");
    WebDriver driver = new ChromeDriver();

    driver.get ("http://test.com");

    WebElement email = driver.findElement(By.id("email"));
    email.sendKeys("brr@gmai.com");


    WebElement password = driver.findElement(By.id("pass"));
    password.sendKeys("1111");

现在,我有链接列表,需要随机选择它们。我怎么能这样做?

2 个答案:

答案 0 :(得分:6)

要获取链接列表,请使用driver.findElements(By.tagName("a")),然后随机选择一个使用随机数生成器,并在数组索引处选择WebElement。

http://docs.seleniumhq.org/docs/03_webdriver.jsp

答案 1 :(得分:4)

试试这个

    Random r = new java.util.Random();
    List<WebElement> links = driver.findElements(By.tagName("a"));

    WebElement randomElement = links.get(r.nextInt(links.size()));