Skip to content
⚡ Zero config GUI for Jest
TypeScript JavaScript
Branch: master
Clone or download
rahulakrishna and Raathigesh 🔧 Fix to template literals rendering null (#169)
🔧 Inside `/server/services/ast/inspector.js`, create a new function
`getTemplateLiteralName`.
🔧 If the type is `TemplateLiteral` handle it using
`getTemplateLiteralName`, else fall back to the old `StringLiteral`
parsing logic

Resolves: #117

🚨 Remove console.log
Latest commit fdcc208 Nov 12, 2019

README.md


Majestic is a GUI for Jest

  • Run all the tests or a single file
  • Toggle watch mode
  • 📸 Update snapshots
  • Examine test failures as they happen
  • Console.log() to the UI for debugging
  • 🚔 Built-in coverage report
  • 🔍 Search tests
  • 💎 Works with flow and typescript projects
  • 📦 Works with Create react app

Majestic supports Jest 20 and above

Get started

Run majestic via npx in a project directory

cd ./my-jest-project # go into a project with Jest
npx majestic # execute majestic

or install Majestic globally via Yarn and run majestic

yarn global add majestic # install majestic globally
cd ./my-jest-project # go into a project with Jest
majestic # execute majestic

or install Majestic globally via Npm and run majestic

npm install majestic -g # install majestic globally
cd ./my-jest-project # go into a project with Jest
majestic # execute majestic

Running as an app

Running with the --app flag will launch Majestic as a chrome app.

Optional configuration

You can configure Majestic by adding majestic key to package.json.

// package.json
{
    "majestic": {
        // if majestic fails to find the Jest package, you can provide it here. Should be relative to the package.json
        "jestScriptPath": "../node_modules/jest/bin/jest.js",
        // if you want to pass additional arguments to Jest, do it here
        "args": ['--config=./path/to/config/file/jest.config.js'],
        // environment variables to pass to the process
        "env": {
          "CI": "true"
        }
    }
}

Optional configuration in project with multiple Jest configuration files

{
    "majestic": {
        "jestScriptPath": "../node_modules/jest/bin/jest.js",
        "configs": {
          "config1": {
            "args": [],
            "env": {}
          },
          "config2": {
            "args": [],
            "env": {}
          }
        }
    }
}

Arguments

--config - Will use this config from the list supplied in optional configuration.

--debug - Will output extra debug info to console. Helps with debugging.

--noOpen - Will prevent from automatically opening the UI url in the browser.

--port - Will use this port if available, else Majestic will pick another free port.

--version - Will print the version of Majestic and will exit.

Shortcut keys

alt+t - run all tests

alt+enter - run selected file

alt+w - watch

alt+s - search

escape - close search

Troubleshooting

Have a look at some of the common workarounds.

Contribute

Have a look at the contribution guide.

Contributors

Thanks goes to these wonderful people (emoji key):

Duncan Beevers
Duncan Beevers

💻
Max Bridgland
Max Bridgland

📖 🤔 🐛 💻
Yuraima Estevez
Yuraima Estevez

💻
Jake Crosby
Jake Crosby

💻
Gavin Henderson
Gavin Henderson

💻
briwa
briwa

💻
Luan Ferreira
Luan Ferreira

💻
Tushar Gupta
Tushar Gupta

💻
Agusti Fernandez
Agusti Fernandez

💻 🤔
Moos
Moos

🐛 💻 📖
MacZel
MacZel

💻 🤔
Vikram Dighe
Vikram Dighe

💻
John Smey
John Smey

💻 🤔 🐛
BuckAMayzing
BuckAMayzing

💻 🐛
Rahul A. Krishna
Rahul A. Krishna

💻 🤔 🔧

This project follows the all-contributors specification. Contributions of any kind welcome!

You can’t perform that action at this time.