无法引用其他js文件中编写的函数

时间:2016-05-23 07:05:53

标签: jasmine protractor

当我使用以下代码时,我收到错误。

使用的工具:量角器 框架:茉莉花 IDE:Webstrom

//Page object file - newPage.js
newPage = function(){
    function clickCandidate(){
        //All your code that you want to call from the test spec
    });
};
module.exports = new newPage();

//Test Spec file - test.js
var newPage = require('./newPage.js'); //Write the location of your javascript file
it('Click on candidate status Screened', function () {
    //Call the function
    newPage.clickCandidate();
});

我收到了错误 -

  

错误:无法找到模块&scenario / scenes / newPage.js'

1 个答案:

答案 0 :(得分:1)

首先,当然要确保require路径正确且相对于您正在运行的文件。

除此之外,还有一些引起我注意的事情:

  1. var之前添加newPage = function()...(我认为这是您问题的根源)
  2. 同时尝试使用this或原型继承
  3. 所以它看起来像这样:

    var newPage = function () {
        this.clickCandidate(){
            //All your code that you want to call from the test spec
        });
    };
    module.exports = new newPage();
    

    OR

    var newPage = function() {};
    
    newPage.prototype.clickCandidate = function() {
        // all your code
    };
    
    module.exports = new newPage();