简体   繁体   English

找不到模块-相对路径

[英]cannot find module - relative path

I'm running a test by the follwoing code and getting an error says: 我正在按照下面的代码运行测试,并收到一条错误消息:

Failed: cannot find module '../page/home_page.js

The main page is: 主页是:

 describe("login to website",function(){ var employeeId; var employeeBday; beforeEach(function(){ browser.get("https://pre-www5.main.co.il/#/"); }); it("should succees login",function(){ employeeId = "54729108"; employeeBday = "25/03/1957"; var home_page = require('../page/home_page.js') home_page.enterUsernameField(employeeId); home_page.enterBirthdateField(employeeBday); var pick_present_page = home_page.clickContinue(); element(by.xpath("//*[@id='planAndDev']/div/div/div/div/matanot/form/div[2]/h4")).getText().then(function(text) { expect(text).toContain("foo") }); }); }); 

And using the home_page class: 并使用home_page类:

 require ('../page/pick_present_page.js') var home_page = function(){ this.enterUsernameField=function(employeeId){ element(by.xpath("//*[@id='planAndDev']/div/div/div/div/form/fieldset/div[1]/input")).sendKeys(employeeId); }; this.enterBirthdateField=function(EmployeebDay){ element(by.xpath("//*[@id='planAndDev']/div/div/div/div/form/fieldset/div[2]/my-date-picker/div/div/input")).sendKeys(EmployeebDay); }; this.clickContinue=function(){ element(by.xpath("//*[@id='planAndDev']/div/div/div/div/form/nav/div/button")).click(); return require('./pick_present_page'); }; module.exports = new home_page(); }; 

The project folder located in C:\\JS_Project and the pages are located in C:\\JS_Project\\page It looks like I'm doing something wrong the way i'm using the relative path. 项目文件夹位于C:\\JS_Project ,页面位于C:\\JS_Project\\page看来我在使用相对路径时做错了什么。

You should stablish the relative path to the SpecFile, not from the config file. 您应该设置SpecFile的相对路径,而不是配置文件的相对路径。

So if your project have: 因此,如果您的项目有:

Project 项目

  • page
    • home_page.js home_page.js
    • pick_present_page.js pick_present_page.js
  • conf.js conf.js
  • specs 眼镜
    • main 主要

you should get the page from "../page/home_page.js" 您应该从“ ../page/home_page.js”获取页面

Main 主要

'use strict;'
let HomePage = require('../page/home_page.js');

describe("login to website",function(){
    let employeeId;
    let employeeBday;
    let home = new HomePage();

    beforeEach(function(){
        browser.get("https://pre-www5.main.co.il/#/");
    });

    it("should login successfully",function(){
        employeeId = "54729108";
        employeeBday = "25/03/1957";

        home.enterUsernameField(employeeId);
        home.enterBirthdateField(employeeBday);
        var pick_present_page = home.clickContinue();

        element(by.xpath("//*[@id='planAndDev']/div/div/div/div/matanot/form/div[2]/h4")).getText().then(function(text)
        {
            expect(text).toContain("foo")
        });

    });
});

Home_Page 主页

   'use strict;'
   require ('../page/pick_present_page.js');

   var HomePage = function(){
       let employeeField = element(by.xpath("//*[@id='planAndDev']/div/div/div/div/form/fieldset/div[1]/input"));
       let employeeBDayField = element(by.xpath("//*[@id='planAndDev']/div/div/div/div/form/fieldset/div[2]/my-date-picker/div/div/input"));
       let continueButton = element(by.xpath("//*[@id='planAndDev']/div/div/div/div/form/nav/div/button"));

        this.enterUsernameField=function(employeeId){
            employeeField.sendKeys(employeeId);
        };

        this.enterBirthdateField=function(EmployeebDay){
             employeeBDayField.sendKeys(EmployeebDay);
        };

        this.clickContinue=function(){
            continueButton.click();
            return require('./pick_present_page');
        };
    };
    module.exports = HomePage;

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM