无法在量角器中的spec文件中使用页面对象

时间:2017-08-03 09:55:46

标签: protractor webstorm

//这是我的AngularPage.cs页面对象文件

 var AngularPage= function()
 {
 var nameInput= element(by.model('yourName'));
 var greeting = element(by.binding('yourName'));

 this.get=function()
 {
    browser.get('http://www.angularjs.org');
 };
 this.setName= function(name)
 {
    nameInput.sendKeys(name);

 };

 this.getGreeting= function()
 {
    return greeting.getText();`
 };
};
module.exports = new AngularPage();

//这是我的AngularHome_spec.js文件

var angularPage = require('./AngularPage.js');
describe('angularjs homepage',function()
{
    var angular_page;

    beforeEach(function()
    {
        angular_page= new AngularPage();
    });

    it('greetings for new user', function()
        {
           // var angular_page= new AngularPage();
            angular_page.get();
            angular_page.setName('Rahul');
            expect(angular_page.getGreeting()).toEqual('Hello Rahul!');
        }
    );

 }

 );

//我无法在我的spec文件中使用页面对象,因为它会抛出错误    :AngularPage未定义

1 个答案:

答案 0 :(得分:0)

在您的代码中,对象已创建两次。第一次在页面" AngularPage.js"并且第二次关于规范" AngularHome_spec.js"水平。

  1. 请执行以下页面" AngularHome_spec.js"

     module.exports = AngularPage;
    
  2. 更改

     var AngularPage = require('./AngularPage.js');//Capital the 'A'