我正在尝试测试一个网站http://www.way2automation.com/angularjs-protractor/banking/#/customer 在这个他们是一个下拉列表,我尝试使用定位器by.repeater,by.model,getText所有但未能运行测试帮助我摆脱它。
我附上了我的规范和pageObject的代码。
PageObject -
var CustomerLoginPage = function () {
this.login1 = element(by.buttonText("Login"));
this.select=element(by.repeater('cust in Customers'));
this.getCustomer = function () {
select.getText();
}
this.showLogin = function () {
login1.click();
};
};
module.exports = CustomerLoginPage;
规范文件
describe("Customer Login Functionality" , function () {
browser.sleep(1000);
it("name details",function () {
browser.get('http://www.way2automation.com/angularjs-protractor/banking/#');
// customer.setName();
expect(customer.getCustomer()).toEqual('Harry Porter');
browser.sleep(1000);
});
it("show" ,function () {
customer.showLogin();
browser.sleep(1000);
});
});
答案 0 :(得分:0)
将页面对象更新为 -
var CustomerLoginPage = function () {
this.select=element.all(by.repeater('cust in Customers'));
this.login1=element(by.cssContainingText('.btn', 'Login'));
this.getCustomer = function () {
this.select.getAttribute('value');
}
this.showLogin = function () {
this.login1.click();
};
};
module.exports = CustomerLoginPage;
和spec文件就像以前一样,它解决了我的问题。
希望它能帮助别人。