Need help with majestic?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

Raathigesh
7.0K Stars 151 Forks MIT License 553 Commits 41 Opened issues

Description

⚡ Zero config GUI for Jest

Services available

!
?

Need anything else?

Contributors list


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

💻

Max Bridgland

📖 🤔 🐛 💻

Yuraima Estevez

💻

Jake Crosby

💻

Gavin Henderson

💻

briwa

💻

Luan Ferreira

💻

Tushar Gupta

💻

Agusti Fernandez

💻 🤔

Moos

🐛 💻 📖

MacZel

💻 🤔

Vikram Dighe

💻

John Smey

💻 🤔 🐛

BuckAMayzing

💻 🐛

Rahul A. Krishna

💻 🤔 🔧

Amila Welihinda

🚇

gregveres

🐛 💻

adam klein

⚠️ 💻

Raphaël Barbazza

💻

Phil Alsford

📖

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

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.