Java 在selenium webdriver中为从excel加载的多个URL创建循环

Java 在selenium webdriver中为从excel加载的多个URL创建循环,java,selenium,testing,selenium-webdriver,automation,Java,Selenium,Testing,Selenium Webdriver,Automation,我有大约500个不同页面的URL,我需要创建一个循环来按顺序打开这些URL,并在所有页面中执行相同的操作。(即打开第一个URL并执行一些操作,然后打开第二个URL并执行相同的操作 这是我的密码: public class LoadPages { private WebDriver driver; private String baseUrl; private boolean acceptNextAlert = true; private StringBuffer verific

我有大约500个不同页面的URL,我需要创建一个循环来按顺序打开这些URL,并在所有页面中执行相同的操作。(即打开第一个URL并执行一些操作,然后打开第二个URL并执行相同的操作

这是我的密码:

public class LoadPages {

  private WebDriver driver;
  private String baseUrl;
  private boolean acceptNextAlert = true;
  private StringBuffer verificationErrors = new StringBuffer();
  public static final String Path_TestData = "D://WorkSpace/myproject/src/utility/";
  public static final String File_TestData = "TestData.xlsx";


  @Before
  public void setUp() throws Exception {
ExcelUtils.setExcelFile(Constant.Path_TestData + Constant.File_TestData,"Sheet1");
   System.setProperty("webdriver.chrome.driver",
C://Users/Admin/Downloads/chromedriver_win32/chromedriver.exe); 
  driver = new  ChromeDriver();

 baseUrl = "https://3ddiagnostix.com/newcp/?task=22&subID=";
    driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
    driver.manage().window().maximize();
 }

  @Test
  public void testUntitledTestCase() throws Exception {
String URL1 = ExcelUtils.getCellData(1, 2);
driver.get(baseUrl);
    driver.findElement(By.name("username")).click();
    driver.findElement(By.name("username")).clear();
    driver.findElement(By.name("username")).sendKeys(UserName);
    driver.findElement(By.name("password")).click();
    driver.findElement(By.name("password")).clear();
    driver.findElement(By.name("password")).sendKeys(Password);
    driver.findElement(By.xpath("//*[@id='contentDiv']/form/table/tbody/tr[4]/td[4]/input")).click();
    driver.get(baseUrl + URL2);
    Thread.sleep(2000);
    JavascriptExecutor jse = (JavascriptExecutor)driver;
    jse.executeScript("scroll(0,50)");
    new Select(driver.findElement(By.id("DSO"))).selectByVisibleText("2077: 3DDX Sample");
    driver.findElement(By.xpath("//option[@value='2077']")).click();
    Thread.sleep(2000);
    jse.executeScript("window.scrollTo(0, document.body.scrollHeight)");
    new Select(driver.findElement(By.id("DSO"))).selectByVisibleText("30633: SmileSource");
    driver.findElement(By.xpath("//option[@value='30633']")).click();
    driver.findElement(By.id("btnUpdate")).click();

那么问题是什么?你被困在哪里了?用相关的HTML和错误堆栈跟踪(如果有)更新问题我认为(为了避免重复代码),你必须提供测试和这个500 url之间的层。这个层必须解析/读取这个url并发送到操作步骤/类。可能通过驱动程序中的关键字?get(baseUrl+URL2);只需键入driver.get(urlPage)。您在所有URL上执行的操作是什么?以下是操作:driver.get(baseUrl);driver.findElement(By.name(“用户名”)).sendKeys(用户名);driver.findElement(By.name(“密码”)).sendKeys(密码);driver.findElement(By.xpath(“/*[@id='contentDiv']]]/form/table/tbody/tr[4]/td[4]/输入“)).click();newSelect(driver.findElement(By.id(“DSO”))).selectByVisibleText(“2077:Sample”);driver.findElement(By.xpath(//option[@value='2077'])。click();newSelect(driver.findElement(By.id(“DSO”)).selectByVisibleText(“30633”);driver.findElement(By.id(“btnUpdate”)。click();