Java - Передача столбца 1 массива в driver.get() и утверждение в столбец 2
Я пишу скрипт, который будет проверять перенаправления URL. У меня есть таблица с двумя столбцами. Один столбец - это URL, который мне нужно передать в driver.get(), а второй столбец - это "URL" - это ожидаемый URL.
Мой вопрос с VerifyRedirectURL. Как бы я пройти итерацию по столбцу [0], передавая это в driver.get(). Затем подтвердите это с помощью столбца [1].
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.Iterator;
import jxl.Sheet;
import jxl.Workbook;
import jxl.read.biff.BiffException;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;
import org.testng.Assert;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
public class UrlRedirectCheck {
public class ReadExcelDataProvider {
public WebDriver driver;
public WebDriverWait wait;
@BeforeClass
public void testSetup() {
driver=new FirefoxDriver ();
driver.manage().window().maximize();
wait = new WebDriverWait(driver, 5);
}
@Test(dataProvider="Urls")
public void VerifyRedirectURL(String RedirectedUrl, String ExpectedURL) {
// For loop for RedirectURL (column 1 from spreadsheet)
{
driver.get ();
driver.getCurrentUrl ();
// driver.getCurrentURL, column 2 from array
assert.assertEquals()
}
}
@DataProvider(name="Urls")
public Object[][] MilbURL() {
Object[][] arrayObject = getExcelData("<URL path>","Sheet1");
return arrayObject;
}
/**
* @param File Name
* @param Sheet Name
* @return
*/
@Test
public String[][] getExcelData(String fileName, String sheetName) {
String[][] arrayExcelData = null;
try {
FileInputStream fs = new FileInputStream (fileName);
Workbook wb = Workbook.getWorkbook(fs);
Sheet sh = wb.getSheet(sheetName);
int totalNoOfCols = sh.getColumns();
int totalNoOfRows = sh.getRows();
arrayExcelData = new String[totalNoOfRows-1][totalNoOfCols];
for (int i= 1 ; i < totalNoOfRows; i++) {
for (int j=0; j < totalNoOfCols; j++) {
arrayExcelData[i-1][j] = sh.getCell(j, i).getContents();
}
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
e.printStackTrace();
} catch (BiffException e) {
e.printStackTrace();
}
return arrayExcelData;
}
@Test
public void tearDown() {
driver.quit();
}
}
}