Невозможно импортировать / требовать в jest / selenium / webdriverio - PullRequest
1 голос
/ 18 марта 2020

Я настраиваю тест автоматизации, используя Jest, Selenium и WebdriverIO.

Ниже приведен мой jest.config. json

{
  "verbose": true,
  "displayName": "automation",
  "moduleFileExtensions": [
    "ts",
    "tsx",
    "js"
  ],
  "testRegex": "./scenarios/web-app",
  "transform": {
    "\\.(ts|tsx)$": "ts-jest"
  },
  "globals": {
    "VERSION": "dev-test",
    "System": {
      "import": {}
    },
    "ts-jest": {
      "babelConfig": true
    }
  },
  "reporters": [
    "default",
    "jest-junit"
  ],
  "setupFilesAfterEnv": ["./jest.setup.js"],
  "testEnvironment": "./jest-wdio-environment.js"
}

И внутри моего .babelrc

{
    "presets": ["es2015", "react"]
}

и в моих package.json

{
  "name": "automation",
  "version": "1.0.0",
  "description": "",
  "devDependencies": {
    "@types/jest": "^24.0.12",
    "@types/node": "^12.12.5",
    "axios": "^0.18.0",
    "babel-jest": "^25.1.0",
    "babel-polyfill": "^6.26.0",
    "jest": "24.1.0",
    "jest-junit": "^6.3.0",
    "moment": "^2.24.0",
    "puppeteer": "^1.13.0",
    "ts-jest": "24.0.2",
    "ts-loader": "^5.1.0",
    "typescript": "^3.1.2",
    "webdriverio": "4.13.2",
    "webpack": "^4.16.5",
    "webpack-cli": "^3.1.0"
  },
  "scripts": {
    "start-restbot": "node node_modules/restbot/app.js",
    "test": "jest --config jest.config.json --runInBand",
    "install": "npm install -g wdio-selenium-standalone-service selenium-standalone && npm link selenium-standalone && selenium-standalone install"
  },
  "dependencies": {
    "node-fetch": "^2.6.0"
  }
}

Теперь это мои конфигурации,

Я пытаюсь получить доступ к некоторым другим служебным константам / функциям из разных файлов, в моем jest-wdio-environment.js примерно так:

const testConfig = require("./config/test-config.ts");

// code..

но после запуска теста я получаю что-то вроде

  ● Test suite failed to run

    <root directory>\test-config.ts:14
        env: string;
           ^

    SyntaxError: Unexpected token :

И это выдает его по требованию примерно так:

    > 6 | const testConfig = require("./config/test-config.ts");
        |                    ^

Я полагаю, что моей babel может потребоваться немного больше настроек или какой-то другой модуль, который мне может понадобиться импортировать?

Любая помощь будет принята с благодарностью, Спасибо!

...