繁体   English   中英

用量角器进行数据驱动的测试

[英]Data Driven testing with Protractor

我已经和量角器一起工作了两个星期,并印象深刻。 我遇到的一件事是,当数据用于Excel电子表格时,如何在Protractor中进行数据驱动的测试。

例如,假设您有一个电子表格,请致电users.xls

user.xls具有两列和4行,如下所示。

|UesrId| Password|
|user1 | pass1   |
|user2 | pass2   |
|user3 | pass3   |

我如何读取该Excel电子表格,然后遍历我的数据,将值从user.xls传递到测试。

哇! 有六个月没有人回答这个问题了吗?

您需要使用csvtojson插件将csv文件转换为json,并获得量角器测试以从json文件读取。 最好将其与gulp集成在一起,以便gulp将为csv文件所做的任何更改重新生成json文件

样例代码:

var gulp = require('gulp');
var convert = require('gulp-convert');
var rename = require('gulp-rename');
var watch = require('gulp-watch');

gulp.task('convertCsv', function() {
    console.log('converting');
    gulp.src('./TestData/*.csv')
        .pipe(convert({from: 'csv', to:'json'}))
        .pipe(rename({extname: '.json'}))
        .pipe(gulp.dest('./TestData/json/'));
});

gulp.task('csv', function () {
    console.log('watching');
    gulp.watch('./TestData/*.csv', ['convertCsv']);
});

要使用数据:

describe('LoginPage.', function() {
    var loginPage = require('../PageObjects/LoginPage.js');
    var loginData = require('../TestData/json/loginData.json');

    loginData.forEach(function (data) {
        it(data.description, function () {
            loginPage.usernameField.sendKeys(data.username);
            loginPage.passwordField.sendKeys(data.password);
            loginPage.loginButton.click();                
        });
    });
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM