且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Selenium使用Npoi来实现Report

更新时间:2022-09-20 09:25:40

Selenium自动化测试过程中,模拟用户操作能实现后需要测试结果输出,这是一个比较重要的过程
  1.用system.IO 读写来实现,如果使用这个方式,每个测试生成一个报告,容易开启太多的线程,占用内存太多
  FileStream ofs1 = new FileStream(path1, FileMode.Create);
  StreamWriter owr = new StreamWriter(ofs);
  2.开发帮助说使用vs com组件里边的引用,如下链接,感觉这个实现方式还更麻烦哪
  http://blog.csdn.net/gisfarmer/article/details/3738959
  3.再询问一个测试网友,他说可以用NPOI来实现,直接引用dll,写几句代码就能实现了,
  下载地址:http://npoi.codeplex.com/releases
  新建ecxel表格,在第一行第一列添加内容
  excel行从1开始,NPOI内部从0开始;excel列从字母开始,NPOI是数字表示,记得转换
public void NPOITest()
{
HSSFWorkbook hssWorkbook = new HSSFWorkbook();
ISheet hssSheet = hssWorkbook.CreateSheet("new sheet");
hssSheet.CreateRow(0).CreateCell(0).SetCellValue("This a sample");
FileStream fs = new FileStream(@"d:\temp\test.xls", FileMode.Create);
hssWorkbook.Write(fs);
fs.Close();
}
  在已有的test.xls添加数据
public void TestExcel()
{
FileStream file = new FileStream(@"d:\temp\test.xls", FileMode.Open, FileAccess.Read);
HSSFWorkbook hssfWork = new HSSFWorkbook(file);
ISheet iSheet = hssfWork.GetSheet("new sheet");
//获取所有行数,然后再+1的基础上加入数据  (lastRowNum是当前数据的最后一行)
iSheet.CreateRow(iSheet.LastRowNum+1).CreateCell(0).SetCellValue("testtest");
FileStream fss = new FileStream(@"d:\temp\test.xls", FileMode.Create);
hssfWork.Write(fss);
file.Close();
}


最新内容请见作者的GitHub页:http://qaseven.github.io/