protractor测试框架6----报告、公共方法、公共变量

1、报告在protractor.conf.js中配置后会自动生成,保存在如下目录 :

会自动生成html报告,用例执行失败的时候会有截图放在screenshots目录下

2、公共方法,如node.js读写excel的方法:

//functionlib.js

//读取excel表格内容的函数:excelPath:excel的路径,如:xxx.xlsx,sheetName:sheet的名称,如sheet1,cell:单元表名称,如:A1\C2
function readExcel(excelPath,sheetName,cell){
        var XLSX = require('xlsx');
        var workbook = XLSX.readFile(excelPath);
        var worksheet=workbook.Sheets[sheetName];
        var celldata=worksheet[cell];
        var result=celldata.v;
        return result;
}

//浏览器等到element出现为止,如果一直没有出现,到time时超时报错;
function browserwait(Element,time){
    browser.wait(function () {//然后等待这个网页出现了element这个选择器,再执行其他的操作
        return browser.isElementPresent(element);//直到这个选择器的元素存在的时候
    },time);
}

//a command to make the driver sleep for the given amount of time.
function browsersleep(time){
    browser.sleep(time);
    console.log("sleep"+time+"ms");
}



// abstract writing screen shot to a file
function writeScreenShot(data, filename) {
    var fs = require('fs');
    var stream = fs.createWriteStream(filename);
    stream.write(new Buffer(data, 'base64'));
    stream.end();
}

function doubleclick(Element){
    browser.actions().mouseMove(Element).doubleClick().perform();
    console.log(Element+"is doubleclicked!")
}

/*
// within a test:
browser.takeScreenshot().then(function (png) {
    writeScreenShot(png, 'exception.png');
});
*/

module.exports = {readExcel,browserwait,browsersleep,doubleclick,writeScreenShot}

3、 公共变量,每个页面或者测试用例都可以调用的变量或者参数:

//environment.js

var webServerDefaultPort = 8081;

module.exports = {
    // The address of a running selenium server.
    seleniumAddress:
        (process.env.SELENIUM_URL || 'http://localhost:4444/wd/hub'),

    // Capabilities to be passed to the webdriver instance.
    capabilities: {
        'browserName':
            (process.env.TEST_BROWSER_NAME || 'chrome'),
        'version':
            (process.env.TEST_BROWSER_VERSION || 'ANY')
    },

    // Default http port to host the web server
    webServerDefaultPort: webServerDefaultPort,

    // Protractor interactive tests
    interactiveTestPort: 6969,

    // A base URL for your application under test.
    /*
    baseUrl:{
        'http://' + (process.env.HTTP_HOST || 'localhost') +
        ':' + (process.env.HTTP_PORT || webServerDefaultPort)
    },*/
    excelpath:
        (process.env.EXCEL_PATH || './lib/parameters.xlsx'),

    urladdress:
        (process.env.URL_VALUE || 'https://xxx.xx.xxx.xxx:xxxxx/login '),

    defaultusername:"xxxxx",
    defaultpassword:"xxxxx",

};

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值