Awesome Open Source
Awesome Open Source

Tropic Test Runner

Tropic offers following features:

  • Async testing with async/await, promises or done callback
  • Execute certain tests by using only and skip
  • Watchmode
  • Colorful logs
  • No global variables
  • Isolated test execution
  • Transpile/Compile code with e.g.: babel, ES2017
  • Lightweight, No additional dependencies

Contents

Example

const test = require('tropic');
const assert = require('assert');

test('title', () => {
  assert.equal(1 + 2, 3)
});

test.only('title test.only', () => {
  assert.equal(1 + 2, 3)
});

test.skip('title test.skip', () => {
  assert.equal(1 + 2, 3)
});

test('title done callback', (done) => {});
test('title promise', () => Promise.resolve());
test('title async-await', async () => await () => {});

Usage

You can install tropic using npm:

npm install --save-dev tropic

After you created your first test file (e.g. test.spec.js) you might just run tropic like the following:

tropic **/*.spec.js --watch

Usage with babel / ES2019:

npm install @babel/register --save-dev
tropic **/*.spec.js [email protected]/register

Note: Please verify that you have a .babelrc or babel config within your package.json. Also make sure that you have all plugins/presets in installed and configured.

Options

--watch

Starts a watcher for the current directory. On file changes the tests will be automaticly executed again. In case there is already an execution running, the running execution will be canceled. The watcher ignores the node_modules directory, dotfiles and hidden directories like .idea.

--require

Following an example using @babel/register:

tropic **/*.spec.js [email protected]/register

Multiple modules are also supported:

tropic **/*.spec.js [email protected]/register,./custom-local-script.js

--timeout

Sets the threshold of the accepted test execution duration in milliseconds. [Default 200 ms]

tropic **/*.spec.js --timeout=20

Contribute

  • Feel free to open an issue or even a pull request
  • To run one single integration test just go for node cli test/assert
  • Check the package.json for further scripts

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Javascript (1,512,368
Typescript (252,216
Node (12,548
Testing (6,369
Jest (3,545
Selenium (3,007
Unit Testing (1,720
Mocha (1,128
Test Automation (1,005
Karma (400
Test Framework (387
Tap (317
Test Runner (226
Related Projects