无法读取属性' sendKeys'未定义的

时间:2016-04-26 13:26:58

标签: javascript protractor

您好我已经在login-page.js

中编写了此代码

enter image description here

我不知道为什么我会收到错误 失败:无法读取属性' sendKeys'未定义的

我在login_spec.js上调用了这个页面

enter image description here

我无法在量角器测试中继续这个

2 个答案:

答案 0 :(得分:2)

您应该使用this代替login_page来引用当前页面对象:

this.login = function (username, password) {
    this.userInput.sendKeys(username);
    // ...
};

答案 1 :(得分:0)

或者,你可以这样做:

//conf.js
module.exports = { 
config: {
framework: 'jasmine',
seleniumAddress: 'http://localhost:4444/wd/hub',
specs: ['epLogin.spec.js'],
capabilities: {
  browserName: 'chrome'
  }   
},  
params: {
login: {
  email: 'default',
  password: 'default'
    }   
  }
}
//pageObject
    this.login = function(email, password){
    this.email.clear();
    this.email.sendKeys(email);
    this.password.clear();
    this.password.sendKeys(password);
    this.loginButton.click();
//basic login example
}; 

 //spec.js
var loginpage = require ('/path'),
config = ('/conf.js'),
user;

beforeEach(function(){
var user = new loginpage();
});

describe('example', function(){
it('login', function(){
    user.get(); //per picture above
    user.login(config.params.login.email, config.params.login.password); 
    //assuming you've defined params & login function in ur PO
});
});