Selenium-java-(Excel-元素管理篇)

Selenium-java-(Excel-元素管理篇)

在selenium進行自動化測試時,對元素剝離可以方便對代碼的維護。
我們可以使用到excel文件進行對元素的管理。
首先我們需要在maven項目pom中導(dǎo)入poi解析excel的jar包。

        <!-- https://mvnrepository.com/artifact/org.apache.poi/poi -->
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi</artifactId>
            <version>3.16</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.apache.poi/poi-ooxml -->
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>3.16</version>
        </dependency>

這里是我的excel文件是這樣編寫管理的:



有了Excel文件之后,需要做的只需把元素的列表解析封存即可。

import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

/**
 * 提供Excel各種方法
 * @Author taoxu
 */
public class Excel {
    private String file;
    public Workbook workbook;
    private InputStream input = null;

    public Excel(String file) {
        this.file = file;
        ClassLoader classLoader = Excel.class.getClassLoader();
        URL resource = classLoader.getResource(file);
        String path = resource.getPath();
        try {
            input = new FileInputStream(path);
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
        //獲得一個工作簿對象
        try {
            workbook = new XSSFWorkbook(input);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    /**
     * 提供獲取表的方法
     * @param i 第幾個表
     * @return 返回一個表對象
     */
    public Sheet getSheet(int i){
        Sheet sheet = workbook.getSheetAt(i);
        return sheet;
    }
      /**
     * 提供退出方法
     */
    public void  close(){
        try {
            input.close();
            workbook.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    /**
     * 提供獲得元素的方法
     * @return 返回一個元素集
     */
    private List<String> setEle()  {
        List<String> eles = new ArrayList();
        Sheet sheet = getSheet(1);
        //獲得表中行的迭代器
        Iterator<Row> rows =  sheet.rowIterator();
        while (rows.hasNext()){
            Row row =  rows.next();
            Cell cell = row.getCell(1);
            //獲得每一行的第二列
            String cel = cell.getStringCellValue().toString();
            eles.add(cel);
        }
        return eles;
    }

    /**
     * 提供調(diào)用獲取的元素集
     * @return 返回一個元素集
     */
    public List<String> getEle(){
        return this.setEle();
    }


}

這樣我們就封裝成功了,使用的時候傳入一個excel文件即可。

Excel excel = new Excel("yuansu.xlsx");
List<String>  eles = excel.getEle();
excel.close();
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容