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

来源:互联网 发布:蔡康永 马东 知乎 编辑:程序博客网 时间:2024/05/22 15:57

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

在selenium进行自动化测试时,对元素剥离可以方便对代码的维护。
我们可以使用到excel文件进行对元素的管理。
首先我们需要在maven项目pom中导入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;    }    /**     * 提供调用获取的元素集     * @return 返回一个元素集     */    public List<String> getEle(){        return this.setEle();    }}

这样我们就封装成功了,使用的时候传入一个excel文件即可。

Excel excel = new Excel("yuansu.xlsx");List<String>  eles = excel.getEle();excel.close();
0 0
原创粉丝点击