数据驱动测试 - 量角器

时间:2017-01-09 09:19:53

标签: angularjs json data-driven-tests

我想要通过从json文件传递数据来编辑配置文件详细信息。

数据表格:

-First Name
-Last Name
-Current Password
-New Password
-Confirm Password, etc....

我只需要更改姓氏。我该怎么办?

- 编辑 -

"This is the form which I have to edit."

我需要更改只有姓氏,名字应该是相同的。我通过json文件传递值。

[
  {
    "fname":"" ,
    "lname":"",
    "currentpassword":"",
    "newpassword":"",
    "confirmpassword":""
  }
]

这是代码:

//import login details
var testData = require('./login_details.json');

//import editprofiledata
var editData = require('./editprofiledata.json');

describe ('Edit Profile Test', function(){

    //browser.driver.manage().window().maximize();
    browser.get("http://example");

    testData.forEach (function (data) {
        it ('Login to the system, and redirect to the dashboard', function() {
            element(by.name('email')).clear().sendKeys(data.Email);
            element(by.name('password')).clear().sendKeys(data.Password);

            //**click on Login button**//
            element(by.css('[ng-disabled="register.$invalid"]')).click();

            //**popup message click**//
            element(by.css('[ng-click="tapToast()"]')).click();
        });
    });

         it("redirect to the Edit Profile",function () {
            
             element(by.css('[ng-click="profileView()"]')).click();

             element(by.css('[ng-click = "goToEditView(2)"]')).click();

             browser.sleep(500);
         });

    editData.forEach (function (data) {
        it("changing details", function () {

            element(by.name('fname')).clear().sendKeys(data.fname);
            element(by.name('lname')).clear().sendKeys(data.lname);
            browser.sleep(1000);
            element(by.model('userEdit.currentPassword')).clear().sendKeys(data.currentpassword);
            browser.sleep(1000);
            element(by.model('userEdit.password')).clear().sendKeys(data.newpassword);
            browser.sleep(1000);
            element(by.model('userEdit.confirmPassword')).clear().sendKeys(data.confirmpassword);
            browser.sleep(1000);

element(by.css('[ng-click="editUserProfile(userEdit)"]')).click();
            browser.sleep(2000);
        });
    });
});

我该怎么做?

1 个答案:

答案 0 :(得分:1)

问题不是很明确,但我想你正在考虑一些数据提供者:

jasmine-data-provider