데이터와 스크립트 분리의 결합 excel 표와 DataProvider

2652 단어
Properties 파일은 작성할 때 값을 작성하지 않은 경우 키를 한 번 써야 합니다. 이것은 excel 표를 이용하여 해결할 수 있습니다.1. 프로젝트 디렉터리에 excel 양식을 만들고 데이터를 기입합니다. 2.excel 클래스를 만들고 반환 값을 구축하는 방법은 Object[][]의 방법입니다. excel 표의 데이터를 읽습니다.
public class excel{
    
       public static Object[][] readFromExcel_o(String dataFile,String sheetName,int rowNum) throws IOException {

        ArrayList list = new ArrayList();

        Object[][] data = null;

        // workbook
        File file = new File(dataFile);
        try {
            workbook = new HSSFWorkbook(new FileInputStream(file));
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

        //  excel 
        //  excel 
        HSSFSheet sheet = workbook.getSheet(sheetName);
        //  
        int rowCount = sheet.getLastRowNum() + 1;
        //  
        int columnCount = sheet.getRow(0).getLastCellNum();


//           list 
        if(sheet!=null){
            for(int i=1;i<=rowCount-1;i++){
                for(int j=0;j=rowCount){
            data = new Object[rowCount-1][columnCount] ;
            int k=-1;
            for (int i=0;i

3. DataProvider에서 readFromExcel_ 호출o 메서드는 excel 값을 읽고 DataProvider에 반환합니다.
public class DataPro {

//     
    @DataProvider(name = "loginSuccess")
    public static Object[][] data() throws IOException {
        Object[][] data;
        String text = System.getProperty("user.dir");
        String file = text + "/taskdata_excel/danshang.xls";
        data = ExcelUtil.readFromExcel_o(file, "sheet1", 3);
        return data;
    }
}

4. 테스트 클래스를 만들고 DataProvider에서 가져온 값을 사용하여 스크립트를 실행합니다.
public class Login_Test {
    WebDriver driver;

    @Test(dataProvider = "loginSuccess",alwaysRun = true, dataProviderClass = DataPro.class)
    public void login(String account,String password) {
        driver = SeleniumDriver.openBrowser("firefox","http://www.epwk.us/");
        Action.click(LoginPage.loginButton);
//         
        Action.sendkeys(LoginPage.account, account);
        Action.sendkeys(LoginPage.password, password);
        Action.click(LoginPage.submintButton);

    }

좋은 웹페이지 즐겨찾기