jest-liveserver

0.0.3 • Public • Published

jest-liveserver

A pluggable jest environment which run live-server in background which can be used in your tests for better e2e tests

WIP and can be buggy

Install

yarn add jest-liveserver -D

Usage

In your jest.config.js, add/replace the following

{
  testEnvironment: 'jest-liveserver',
  testEnvironmentOptions: {
    liveServer: {port,...},
    liveServerJestPlugins: [plugin]
  }
}

Options

There are two kind of options this package accepts,

1. liveServer

This is the live-server package's options ref this options

2. liveServerJestPlugins

It accepts a array of plugins. ref

Plugins

Why ?

This package supports plugins which can be added to the core of the environment. The core plugin just takes the options for the live-server and simply run a server with them. But sometimes you may need to do some extra works like moving or copy-pasting your site or files to your test folder so for these kind of works use plugins.

Write a Plugin

Plugins are simply objects which returns two methods,

preRun This will run before running the live-server server, so work like moving files/folder can be done in this. this plugin should return a live-server options which will update the default options or the options passed through jest.config.js under testEnvironmentOptions.liveServer

eg

{
  preRun: (dirname, cwdPath, _liveServerConfig) => new_live_server_config
}

tearDown This is the method which will run before stopping the live-server server, this can be use-full when doing operation like cleaning the dir or deleting temporary files etc.

It should not return any thing

eg

{
  tearDown: (dirname, cwdPath, _liveServerConfig) => {}
}

Tips

If you are facing issues like environment teardown quickly and closing the server, try to increase the jest timeout time

jest.setTimeout()

Maintained by

pluggingIn logo

Author

Aniketh Saha

License

MIT

Package Sidebar

Install

npm i jest-liveserver

Weekly Downloads

1

Version

0.0.3

License

ISC

Unpacked Size

4.7 kB

Total Files

4

Last publish

Collaborators

  • anixsaha