在RFT中使用Excel進行資料驅動測試
在 QTP 中,可以 通過 COM訪問 Excel ,或者通過 ADO 以資料庫查詢的方式訪問 Excel 中儲存的資料。而在 RFT 中,則好像沒有這麼直接的用法。需要匯入專門處理 Excel 資料的 JXL 包:
http://www.andykhan.com/jexcelapi/
JExcelApi is a Java API for reading, writing and modifying the contents of Excel spreadsheets
封裝一個處理 Excel 的類出來:
package Lib;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
import jxl.write.Label;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
public class ExcelService {
private String path = null;
private String sheetname = null;
public ExcelService(String FilePath,String SheetName){
path = FilePath;
sheetname = SheetName;
}
public String read(int colum, int row) throws Exception {
FileInputStream fileInputStream = new FileInputStream(path);
Workbook workbook = Workbook.getWorkbook(fileInputStream);
Sheet sheet = workbook.getSheet(sheetname);
Cell cell = sheet.getCell(colum, row);
String content = cell.getContents();
workbook.close();
fileInputStream.close();
return content;
}
public int getRowCount() throws Exception {
FileInputStream fileInputStream = new FileInputStream(path);
Workbook workbook = Workbook.getWorkbook(fileInputStream);
Sheet sheet = workbook.getSheet(sheetname);
int count = sheet.getRows();
workbook.close();
fileInputStream.close();
return count;
}
public int getClumnCount() throws Exception {
FileInputStream fileInputStream = new FileInputStream(path);
Workbook workbook = Workbook.getWorkbook(fileInputStream);
Sheet sheet = workbook.getSheet(sheetname);
int count = sheet.getColumns();
workbook.close();
fileInputStream.close();
return count;
}
}
然後使用 Excel 資料作為資料驅動的資料來源:
public void testMain(Object[] args)
{
ExcelService excel = new ExcelService( "D://RFT//RFT_Project//DataDriven//Data//TestExcelData.xls" , "Sheet1" );
try {
int rowCount = excel.getRowCount();
int colCount = excel.getClumnCount();
for ( int i=0;i<rowCount;i++)
{
System. out .println( "new line:" );
for ( int j=0;j<colCount;j++){
System. out .println(excel.read(j, i));//取到Excel的每個單元格的資料
}
}
} catch (Exception e) {
e.printStackTrace ();
}
}
相關文章
- 使用Spring Boot REST API進行測試驅動開發Spring BootRESTAPI
- TestComplete使用關鍵字測試的資料驅動測試(三)
- TestComplete資料驅動測試教程(二)——記錄測試資料
- Pytest自動化發現測試資料並進行資料驅動-支援YAML/JSON/INI/CSV資料檔案YAMLJSON
- DDT資料驅動效能測試(一)
- Flutter測試(二):在專案中進行 Widget 測試Flutter
- 使用Excel資料進行條件刪除Excel
- 使用 PostMan 進行自動化測試Postman
- 使用PostMan進行自動化測試Postman
- TestComplete資料驅動測試教程(三)——修改記錄測試
- 在C#中進行單元測試C#
- 在TypeScript專案中進行BDD測試TypeScript
- 大資料包表如何進行自動化測試大資料
- 在Rainbond上使用Locust進行壓力測試AI
- 測試驅動開發在專案中的實踐
- logminer進行資料探勘分析測試
- 求助帖:JMeter 介面自動化測試——資料驅動JMeter
- Swift 進階開發指南:如何使用 Quick、Nimble 執行測試驅動開發(TDD)SwiftUI
- Python中的單元測試框架:使用unittest進行有效測試Python框架
- 使用 HTTPie 進行 API 測試HTTPAPI
- 使用Loadrunner進行效能測試
- 使用PostMan進行API測試PostmanAPI
- 如何理解自動化測試資料驅動與關鍵字驅動的區別?
- 測試驅動開發(TDD)—— 資料庫查詢篇資料庫
- 使用 Robot Framework 進行自動化視覺測試Framework視覺
- 在Linux中,如何進行系統效能的峰值測試?Linux
- 在Linux中,如何進行網路效能的峰值測試?Linux
- 在Linux中,如何進行資料恢復?Linux資料恢復
- 介面測試的時候如何生成隨機資料進行測試隨機
- 簡單的11步在Laravel中實現測試驅動開發Laravel
- 簡單的 11 步在 Laravel 中實現測試驅動開發Laravel
- Rest Assured+TestNg實現資料驅動的介面測試REST
- 使用 Sysbench 進行 Linux 效能測試Linux
- 使用Wiremock進行整合測試 - kubilayREMMock
- 使用jest進行單元測試
- 使用 MeterSphere 進行 Dubbo 介面測試
- 使用JMeter進行壓力測試JMeter
- 使用JUnit進行單元測試
- golang 表格驅動測試Golang