我是靠谱客的博主 机灵刺猬,最近开发中收集的这篇文章主要介绍在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 ();

          }

                      

    }

 

 

最后

以上就是机灵刺猬为你收集整理的在RFT中使用Excel进行数据驱动测试的全部内容,希望文章能够帮你解决在RFT中使用Excel进行数据驱动测试所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(53)

评论列表共有 0 条评论

立即
投稿
返回
顶部