您的位置:首页 > 其它

Sahi简单excel测试框架

2015-12-03 21:59 344 查看
虽然sahi pro版本有一个excelframework,但是在sahi os被省掉了,所以自己就写了一个超简单的excel测试框架,各位可以在此基础上做更多的个人定制。

首先要让sahi os可以使用excel api ,可以看这里

这个框架的逻辑就是首先用sahi脚本写好函数,然后将函数名及参数放到excel里,通过读取excel顺序执行写好的函数。这样测试开发写好函数及函数使用说明,就可以交给功能测试。功能测试根据自己的测试用例在excel里组成测试流程进行自动化测试。

excel模板定义如下:

函数名参数1参数2参数3
add345hehekaka
queryonetwothree
deletefourmefive
框架代码如下:

function excelFramework($excel, $sheet) {
//返回一个数据表的二维数组,不带标题行,也就是第0行
var $excel = _readExcelFile($excel, $sheet);
//循环读取每一行,将每行的数据组成执行函数,通过eval()执行
for (var $i = 0; $i < $excel.length; $i++) {
//通过buildFunction方法获取组成的函数
var $F = buildFunction($excel, $i);
_log($F);
//执行组成的函数
eval($F);
}
}


function buildFunction($excel, $rowindex) {
var $f;
//新建一个数组
var $ar = new Array();
for (var $i = 1; $i < $excel[$rowindex].length; $i++) {
if ($excel[$rowindex][$i] != null&&$excel[$rowindex][$i]!="") {
var $arg = "'" + $excel[$rowindex][$i] + "'";
//将函数的参数放到数组里
$ar.push($arg);
}
}
//用逗号分隔把读到的参数组成字符串
var $args = $ar.join(",");
//最后把第0列的函数名与参数组合成完整的函数
$f = $excel[$rowindex][0] + "(" + $args + ")";
return $f;
}


在sahi脚本里添加上面两段代码,执行excelFramwork方法,如:

excelFramework("readExcelFile.xls", "Sheet1");


这样便会一行一行顺序执行自定义的函数实现简单的自动化。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: