我与Selenium合作创建了质量自动化测试框架。这是针对测试用例(Excelsheets文件格式),对象映射(XML格式),ec的单独文件。
我的公司已经开始使用AngularJS,我正在考虑使用Protractor创建类似的Quality Automation框架。
因为,Protractor是基于Javascript的,我很纳闷 1.如果我可以使用Javascript读取excel文件? 2.最好的方法是什么? 我看了几个在线论坛,博客询问是服务器端还是客户端;提出各种各样的事情,比如把它转换成XML,JSON,等等等等。另外,我找到了JS XLS和JS XLSX。通过与Protractor / Javascript一起使用的清晰视角,这一切都令人困惑并希望深入了解这一点。
感谢您的帮助,建议和建议。
答案 0 :(得分:0)
嗨,请按照以下方式通过javascript阅读xlsx文件,以便使用量角器自动化基于角度的网站(更多信息请访问https://www.npmjs.com/package/xlsx
)
这是我的第一个名为excelReader.js的
的js文件var excelReader = function(){
if(typeof require !== 'undefined')XLSX = require("../path/xlsx"); // path for xlxs directory that you have downloaded via npm
var workbook = XLSX.readFile("C:\\Users\\path\\Desktop\\nameofexcel.xlsx");
var first_sheet_name = workbook.SheetNames[0];
this.Reader = function(cellValue){
var address_of_cell = cellValue;
var worksheet = workbook.Sheets[first_sheet_name];
var desired_cell = worksheet[address_of_cell];
var desired_value = desired_cell.v;
return desired_value;
};
}
module.exports = new excelReader();
在主测试中你可以像下面一样使用它(我使用过茉莉花数据提供者)
var DataProvider = require("../path/excelReader.js"); // call the excelReader.js file
var using = require("../path/jasmine-data-provider"); // calling jasmine data provoider if u want u can leave it.
describe("you text suite",function(){
var dataProvider = {
"Case 1 : Valid username and Invalid password" : {UN : DataProvider.Reader("C2"),PWD : DataProvider.Reader("D2")}, // C2 and D2 are excel cell value
};
using(dataProvider, function(Parameter, description) {
xit("your spec file(login example) " + description,function(){
LoginPage.UserName(Parameter.UN); // here i have called the excel value which contains username and password
LoginPage.Password(Parameter.PWD);
LoginPage.SignIn();
});
});
});
希望这可以帮助您查询任何问题。