1.0.0 • Published 4 years ago

vscode-jest-test-runner v1.0.0

Weekly downloads
6
License
MIT
Repository
github
Last release
4 years ago

vscode-jest-test-runner

npm version npm downloads styled with prettier build status

Run VS Code tests using Jest Testing Framework

Table of contents

Installation

npm

npm install vscode-jest-test-runner jest --save-dev

yarn

yarn add vscode-jest-test-runner jest --dev

Setup

Example launch.json

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Jest: Extension Tests",
      "type": "extensionHost",
      "request": "launch",
      "runtimeExecutable": "${execPath}",
      "args": [
        "--disable-extensions",
        "--extensionDevelopmentPath=${workspaceFolder}",
        "--extensionTestsPath=${workspaceFolder}/node_modules/vscode-jest-test-runner"
      ],
      "outFiles": ["${workspaceFolder}/dist/**/*.js"],
      "preLaunchTask": "npm: compile",
      "internalConsoleOptions": "openOnSessionStart",
      "env": {
        "JEST_TEST_RUNNER_TEST_REGEX": "",
        "JEST_TEST_RUNNER_UPDATE_SNAPSHOTS": "false"
      }
    },
    {
      "name": "Jest: Current Test File",
      "type": "extensionHost",
      "request": "launch",
      "runtimeExecutable": "${execPath}",
      "args": [
        "--disable-extensions",
        "--extensionDevelopmentPath=${workspaceFolder}",
        "--extensionTestsPath=${workspaceFolder}/node_modules/vscode-jest-test-runner"
      ],
      "outFiles": ["${workspaceFolder}/dist/**/*.js"],
      "preLaunchTask": "npm: compile",
      "internalConsoleOptions": "openOnSessionStart",
      "env": {
        "JEST_TEST_RUNNER_TEST_REGEX": "${file}",
        "JEST_TEST_RUNNER_UPDATE_SNAPSHOTS": "false"
      }
    },
      {
      "name": "Jest: Update All Snapshots",
      "type": "extensionHost",
      "request": "launch",
      "runtimeExecutable": "${execPath}",
      "args": [
        "--disable-extensions",
        "--extensionDevelopmentPath=${workspaceFolder}",
        "--extensionTestsPath=${workspaceFolder}/node_modules/vscode-jest-test-runner"
      ],
      "outFiles": ["${workspaceFolder}/dist/**/*.js"],
      "preLaunchTask": "npm: compile",
      "internalConsoleOptions": "openOnSessionStart",
      "env": {
        "JEST_TEST_RUNNER_TEST_REGEX": "",
        "JEST_TEST_RUNNER_UPDATE_SNAPSHOTS": "true"
      }
    },
    {
      "name": "Jest: Update Snapshots in Current Test File",
      "type": "extensionHost",
      "request": "launch",
      "runtimeExecutable": "${execPath}",
      "args": [
        "--disable-extensions",
        "--extensionDevelopmentPath=${workspaceFolder}",
        "--extensionTestsPath=${workspaceFolder}/node_modules/vscode-jest-test-runner"
      ],
      "outFiles": ["${workspaceFolder}/dist/**/*.js"],
      "preLaunchTask": "npm: compile",
      "internalConsoleOptions": "openOnSessionStart",
      "env": {
        "JEST_TEST_RUNNER_TEST_REGEX": "${file}",
        "JEST_TEST_RUNNER_UPDATE_SNAPSHOTS": "true"
      }
    }
  ]
}

Environment variables

JEST_TEST_RUNNER_TEST_REGEX

The pattern Jest uses to detect test files.

Example env settings:

"env": {
  "JEST_TEST_RUNNER_TEST_REGEX": "${file}",
}

JEST_TEST_RUNNER_UPDATE_SNAPSHOTS

Use this to re-record every snapshot that fails during this test run. Can be used together with JEST_TEST_RUNNER_TEST_REGEX to re-record snapshots.

Example env settings:

"env": {
  "JEST_TEST_RUNNER_UPDATE_SNAPSHOTS": "true",
}

JEST_TEST_RUNNER_SETUP

The path to a module that runs some code to configure or set up the testing framework before each test. You can use this to mock VS Code APIs, such as forcing the getConfiguration API to use an in-memory cache vs. interacting with the file system (see shifty example).

Example env settings:

"env": {
  "JEST_TEST_RUNNER_SETUP": "${workspaceFolder}/dist/test-utils/vscode-jest-test-runner-setup.js",
}

Contributing

  1. Fork this repository to your own GitHub account and then clone it to your local device
  2. Install the dependecies using yarn
  3. Link the package to the global module directory: yarn link
  4. Run yarn test --watch and start making your changes
  5. You can use yarn link vscode-jest-test-runner to test your changes in a local project
  6. Ensure any changes are documented in CHANGELOG.md

License

MIT © Brent Mealhouse