量角器中的数据驱动测试

沙滩架

我是量角器的新手。谁能指导我使用量角器进行数据驱动的测试。下面是代码,配置文件和testdata.json文件。

'use strict';

var testData = require('../example/Test Data/Test.json');

describe('LoginPage', function() {

var loginData = require('../example/Test Data/Test.json');

testData.forEach(function (data) {
    it("data.description", function (data) {
        browser.get("http://127.0.0.1:8080/#/login");
element(by.model("username")).sendKeys(data.username);
element(by.model("password")).sendKeys(data.passwordField); 
element(by.buttonText("Authenticate")).click();

});
});
});  

配置文件:

 // An example configuration file.
exports.config = {
directConnect: true,

//seleniumAddress: 'http://localhost:4444/wd/hub',
// Capabilities to be passed to the webdriver instance.
capabilities: {
'browserName': 'chrome'

},

// Framework to use. Jasmine is recommended.
framework: 'jasmine',

// Spec patterns are relative to the current working directory when
// protractor is called.
specs: ['Testpage.js'],

// Options to be passed to Jasmine.
jasmineNodeOpts: {
defaultTimeoutInterval: 30000
}
};

Json文件:

[
{
 "username": "admin",
 "passwordField": "admin"
},

{
"username": "admin1",
"passwordField": "admin2"
}
]

问题是它不是在获取数据,而是在所有输入框中写入未定义的内容。请帮忙

拉姆·帕萨拉(Ram Pasala)

我假设它是一个对象数组,您可以迭代每个数组元素并直接访问其内容,而您不需要testdata.forEach(),则可以尝试这样的操作-

 'use strict';

var testData = require('../example/Test Data/Test.json');

describe('LoginPage', function() {

it("data.description", function () {
    browser.get("http://127.0.0.1:8080/#/login");
    element(by.model("username")).sendKeys(testData[0].username);
    element(by.model("password")).sendKeys(testData[0].passwordField); 
    element(by.buttonText("Authenticate")).click();

   });
  });
 });  

我尚未测试以上代码,因此您应该使用Page Objects而不是直接在测试中使用它们!

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章