2016-11-18 1 views
1

Мне нужно автоматизировать ссылки на моем веб-сайте. Я хочу передавать значения xpath один раз в каждой итерации цикла. Так что я могу свести к минимуму мое кодирование
общественного класса Popup {Как добавить условие цикла для кода selenium java

private WebDriver driver; 
    private String baseUrl; 
    //private boolean acceptNextAlert = true; 
    private StringBuffer verificationErrors = new StringBuffer(); 

    @Before 
    public void setUp() throws Exception { 
    driver = new FirefoxDriver(); 
    baseUrl = "http://www.example.com/info.php"; 
    driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS); 
    } 

    @Test 
    public void testPopup() throws Exception { 
    driver.findElement(By.xpath("//div[@id='info-list']/div[2]/div/div/div/div/a[2]/i")).click(); 
    driver.findElement(By.xpath("//div[@id='info-list']/div[2]/div/div/div/div/a[3]/i")).click(); 
    driver.findElement(By.xpath("//div[@id='info-list']/div[2]/div/div/div/div/a[4]/i")).click(); 
    driver.findElement(By.xpath("//div[@id='info-list']/div[2]/div/div/div/div/a[5]/i")).click(); 

ответ

0

Можете ли вы попробовать это?

for(int j=2; j<=5; j++) { 
    driver.findElement(By.xpath("//div[@id='info-list']/div[2]/div/div/div/div/a["+j+"]/i")).click(); 
} 
0

Привет Sanchit Khera Попробуйте это:

int i = 0; 

    //extract the link texts of each link element 
    for (WebElement e : linkElements) 
    { 
     linkTitles[i] = e.getText(); 
     i++; 
    } 

    //Test each link 
    for (String t : linkTitles) 
    {    
      // Titles Click 
      driver.findElement(By.linkText(t)).click(); 

 Смежные вопросы

  • Нет связанных вопросов^_^