這篇文章主要講解了“測試驅動技術系列之如何理解操控excel的核心api”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“測試驅動技術系列之如何理解操控excel的核心api”吧!
為長嶺等地區用戶提供了全套網頁設計制作服務,及長嶺網站建設行業解決方案。主營業務為網站設計、網站建設、長嶺網站設計,以傳統方式定制建設網站,并提供域名空間備案等一條龍服務,秉承以專業、用心的態度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!
測試數據格式展示如下(junit4也類似):
@DataProvider public Object[][] dp1() { return new Object[][] { new Object[] { 1, 1,0 }, new Object[] { 2, 1,1 }, new Object[] { 2, 1,2 }, }; }
大家可以看到,如果數據量不大的時候,這種形式是OK的,但是如果測試數據量很大,那么在代碼中維護測試數據顯然效率就不高了!在做數據驅動的工作中,通常把測試數據保存在excel中,然后再對excel進行讀寫相關操作。在這里以java為例,我帶大家熟悉一下poi-ooxml jar包的使用,給大家講解一下這個jar包操控excel的核心api。
poi-ooxml jar介紹
jar包導入
Maven中的pom配置信息如下
<dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>4.1.2</version> </dependency>
首先介紹幾個概念,整個excel文件被稱作workbook、每個工作表被稱作Sheet,每個單元格被稱作cell
api詳解
打開xlsx格式文檔
XSSFWorkbookworkbook = new XSSFWorkbook(new FileInputStream("E:\\test.xlsx"));
打開xls格式文檔
HSSFWorkbookworkbook = new HSSFWorkbook(newFileInputStream("E:\\test.xls"));
關閉文檔
workbook.close();
通過id獲取工作表,0表示第一個工作表
Sheet sheet =workbook.getSheetAt(0);
通過工作表名稱獲取工作表
Sheet sheet =workbook.getSheet("test1");
創建sheet,名命為test2
workbook.createSheet("test2");
創建sheet,名命為test3,并把第一個sheet中的值拷貝過去
workbook.cloneSheet(0,"test3");
獲取sheet中的有效數據行數
int iRowNum=sheet.getPhysicalNumberOfRows();
獲取sheet中的有效數據列數
int iColumnNum=sheet.getRow(0).getPhysicalNumberOfCells();
獲取第一列第一行的數據類型
CellTypetype=sheet.getRow(1).getCell(0).getCellType();
Cell的數據類型包括:
NUMERIC,數值型
STRING,字符串型
FORMULA,公式型
BLANK,空值
BOOLEAN,布爾型
ERROR,錯誤
獲取第一列第一行的數據值
String value=sheet.getRow(1).getCell(0).getStringCellValue();
把第一列第一行的數據設置為kevin1
sheet.getRow(1).getCell(0).setCellValue("kevin1");
注意:如果涉及到對excel的寫入操作或者創建sheet表格的操作,例如:
workbook.createSheet("test2"); workbook.cloneSheet(0,"test3"); sheet.getRow(1).getCell(0).setCellValue("kevin1");
必須添加下面三條語句
FileOutputStreamis = new FileOutputStream("E:\\test.xls"); workbook.write(is); is.close();
完整代碼
import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.usermodel.CellType; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook; public class ExcelBaseDemo { public static void main(String[] args) throws FileNotFoundException, IOException { //XSSFWorkbook workbook = new XSSFWorkbook(new FileInputStream("E:\\test.xlsx")); //打開xlsx格式 HSSFWorkbookworkbook = new HSSFWorkbook(new FileInputStream("E:\\test.xls"));//打開xls格式 // 獲取工作表 //Sheet sheet = workbook.getSheetAt(0); Sheetsheet = workbook.getSheet("test1"); // workbook.createSheet("test2"); //創建sheet,名命為test2 // workbook.cloneSheet(0, "test3"); //創建sheet,名命為test3,并把第一個sheet中的值拷貝過去 int iRowNum=sheet.getPhysicalNumberOfRows(); //獲取sheet中的有效數據行數 int iColumnNum= sheet.getRow(0).getPhysicalNumberOfCells();//獲取sheet中的有效數據列數 System.out.println(iRowNum); System.out.println(iColumnNum); CellTypetype=sheet.getRow(1).getCell(0).getCellType(); //獲取第一列第一行的數據類型 System.out.println(type); Stringvalue= sheet.getRow(1).getCell(0).getStringCellValue(); //獲取第一列第一行的數據值 System.out.println(value); sheet.getRow(1).getCell(0).setCellValue("kevin1"); //把第一列第一行的數據設置為kevin1 //如果涉及到對excel的寫入操作或者創建sheet表格的操作,必須添加下面三條語句 FileOutputStreamis = new FileOutputStream("E:\\test.xls"); workbook.write(is); is.close(); workbook.close(); } }
感謝各位的閱讀,以上就是“測試驅動技術系列之如何理解操控excel的核心api”的內容了,經過本文的學習后,相信大家對測試驅動技術系列之如何理解操控excel的核心api這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創新互聯,小編將為大家推送更多相關知識點的文章,歡迎關注!
網頁題目:測試驅動技術系列之如何理解操控excel的核心api
轉載注明:http://vcdvsql.cn/article46/phojeg.html
成都網站建設公司_創新互聯,為您提供電子商務、、微信小程序、面包屑導航、標簽優化、Google
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯