问题
While loading the .env
file to pass env values to the getToken.js
script in the cypress root folder throws Cannot find module 'dotenv'error. I have installed npm install dotenv
. Could someone please advise what I am missing here ? .env
file is available in cypress root folder.
Environment : Windows 10 > git bash /command prompt
const puppeteer = require("puppeteer");
require('dotenv').config({path: '.env'})
const baseURL = process.env.CYPRESS_BASE_URL
const testsUser = process.env.CYPRESS_TESTS_USERNAME
puppeteer
.launch({ headless: true, chromeWebSecurity: false, args: ['--no-sandbox'] })
.then(async browser => {
const page = await browser.newPage();
await page.goto(`${baseURL}/login`);
await page.waitFor(2000);
await page.waitForSelector("input[name=username]");
await page.type("input[name=username]", testsUser , {
delay: 50
});
browser.close();
});
package.json
"scripts": {
"cy:run": "cypress run",
"get-token-main": "node getToken.js && mv tokenData.json cypress/fixtures",
"cy:open-qa": "npm run get-token-main && cypress open"
internal/modules/cjs/loader.js:797 throw err; ^
Error: Cannot find module 'dotenv' Require stack: - /e2e/getToken.js at Function.Module._resolveFilename (internal/modules/cjs/loader.js:794:15) at Function.Module._load (internal/modules/cjs/loader.js:687:27) at Module.require (internal/modules/cjs/loader.js:849:19) at require (internal/modules/cjs/helpers.js:74:18) at Object. (/e2e/getToken.js:3:16) at Module._compile (internal/modules/cjs/loader.js:956:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:973:10) at Module.load (internal/modules/cjs/loader.js:812:32) at Function.Module._load (internal/modules/cjs/loader.js:724:14) at Function.Module.runMain (internal/modules/cjs/loader.js:1025:10) { code: 'MODULE_NOT_FOUND', requireStack: [ '/e2e/getToken.js' ]
来源:https://stackoverflow.com/questions/61407393/while-running-the-script-throws-cannot-find-module-dotenv