Selenium Webdriver - Apache POI - XSSF - 第二个循环没有被执行

时间:2016-10-14 14:38:11

标签: loops selenium webdriver

我正在使用Apache POI从多个excel读取数据,但我的代码无法识别来自第二个excel的值,它甚至没有进入我的第二个FOR循环

Excel 1 - 要登录的测试数据

Excel 2 - 课程详情

我的登录凭据出现在第一个excel中,它有5个数据。我想使用该用户登录并为该用户添加课程。感谢你对此的帮助!!

注意#如果您对此代码有任何疑虑,请提出建议 以下是我正在使用的代码

package M1.Testcases;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.concurrent.TimeUnit;

import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.support.PageFactory;
import org.testng.annotations.Parameters;
import org.testng.annotations.Test;

import Helper.BrowserFactory;
import M1.Pages.Add_Course;
import M1.Pages.LoginPage;

   public class CopyOfVerifyAdd_Course 
   {

WebDriver driver;
@Test
@Parameters("browser")
public void checkValidUser(String browser) throws IOException,   InterruptedException
{
    try  
    {
            FileInputStream file = new FileInputStream(new File("File1Path")); 
            XSSFWorkbook workbook = new XSSFWorkbook(file);
            XSSFSheet sheet = workbook.getSheetAt(0);
            FileInputStream file1 = new FileInputStream(new File("File2Path"));  
            XSSFWorkbook workbook1 = new XSSFWorkbook(file1);
            XSSFSheet sheet1 = workbook1.getSheetAt(0);
            String url= "1st URL";

          for (int i=1; i <= sheet.getLastRowNum(); i++)
          {

              String uid = sheet.getRow(i).getCell(0).getStringCellValue();

              String pass = sheet.getRow(i).getCell(1).getStringCellValue();

              WebDriver driver=BrowserFactory.startBrowser(browser,url);

              LoginPage login_page=PageFactory.initElements(driver, LoginPage.class);

              login_page.login_MI(uid,pass);

              driver.get("2nd URL");
              driver.manage().timeouts().implicitlyWait(10000, TimeUnit.MILLISECONDS);


              for (int j=1; j <= sheet1.getLastRowNum(); j++)
              {
                  Thread.sleep(10000);
                  String course_title = sheet1.getRow(j).getCell(0).getStringCellValue();
                  String course_code = sheet1.getRow(j).getCell(1).getStringCellValue();
                  String course_cat_desc = sheet1.getRow(j).getCell(2).getStringCellValue();
                  String course_full_desc = sheet1.getRow(j).getCell(3).getStringCellValue();
                  String course_price = sheet1.getRow(j).getCell(4).getStringCellValue();
                  String course_target_audience = sheet1.getRow(j).getCell(5).getStringCellValue();
                  String course_learner_assess = sheet1.getRow(j).getCell(6).getStringCellValue();
                  String course_copyright = sheet1.getRow(j).getCell(7).getStringCellValue();
                  String course_release_date = sheet1.getRow(j).getCell(8).getStringCellValue();
                  String course_review_date = sheet1.getRow(j).getCell(9).getStringCellValue();
                  String course_expiration_date = sheet1.getRow(j).getCell(10).getStringCellValue();
                  String course_state_req = sheet1.getRow(j).getCell(11).getStringCellValue();
                  String course_bibi = sheet1.getRow(j).getCell(12).getStringCellValue();

                  Add_Course add_course_page=PageFactory.initElements(driver, Add_Course.class);

                  driver.switchTo().frame(course_cat_desc);
                  driver.manage().timeouts().implicitlyWait(2000, TimeUnit.MILLISECONDS);
                  driver.switchTo().frame(course_full_desc);
                  driver.manage().timeouts().implicitlyWait(2000, TimeUnit.MILLISECONDS);
                  driver.switchTo().frame(course_target_audience);
                  driver.manage().timeouts().implicitlyWait(2000, TimeUnit.MILLISECONDS);
                  driver.switchTo().frame(course_learner_assess);
                  driver.manage().timeouts().implicitlyWait(2000, TimeUnit.MILLISECONDS);
                  driver.switchTo().frame(course_state_req);
                  driver.manage().timeouts().implicitlyWait(2000, TimeUnit.MILLISECONDS);
                  driver.switchTo().frame(course_bibi);
                  driver.manage().timeouts().implicitlyWait(5000, TimeUnit.MILLISECONDS);

                  add_course_page.AddCourse(course_title,course_code,course_cat_desc,course_full_desc,course_price,course_target_audience,course_learner_assess,
                          course_copyright,course_release_date,course_review_date,course_expiration_date,course_state_req,course_bibi);

                  Thread.sleep(10000);

              } 

              driver.manage().deleteAllCookies();

              driver.quit();

          }
          workbook.close();
          file.close();
          workbook1.close();
          file1.close();
      }          
     catch (FileNotFoundException fnfe) 
     {
         fnfe.printStackTrace();
     }
}

}

0 个答案:

没有答案