Awesome Open Source
Awesome Open Source
Sponsorship

Baretest is an extremely simple JavaScript test runner. It has a tiny footprint, near-instant performance, and a brainless API. It makes testing tolerable.

How Baretest fits on the testing landscape

Install

npm install --save-dev baretest

With pnpm

pnpm install --save-dev baretest

Links

Documentation

... Getting started

... API reference

... FAQ

Why Baretest?

We constantly hit CMD + B on Sublime Text to test a function we are actively working on. We do this all the time, sometimes hundreds of times a day. With Jest, each of these runs would take seconds, but Baretest runs under 100ms.

A typical setup in Sublime Text Comparing Jest vs Baretest

Another reason for building Baretest was to have an extremely simple API. Typically we only use test() and the Node's built-in assert.equals() methods to run our tests. We've never needed automatic re-ordering, file watchers, "mocking" or "snapshotting".

const test = require('baretest')('My app'),
  assert = require('assert'),
  app = require('my-app')

test('add user', async function() {
  const user = await app.addUser('[email protected]')
  assert.equals(user.name, 'Test')
})

test('reject duplicate emails', async function() {
  await assert.rejects(async function() {
    await app.addUser('[email protected]')
  })
})

// ...

!(async function() {
  await test.run()
})()

We think a good test runner stays out of your way. We want to focus on the task at hand and not deal with the complexities of testing. We don't want to commit to a massive framework that dictates our work.

License

Copyright 2020 OpenJS Foundation and contributors. Licensed under MIT.


Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
javascript (66,071
jest (251
tdd (149
mocha (87
bdd (81
test-framework (56
minimalist (52
test-runner (41
tap (39

Find Open Source By Browsing 7,000 Topics Across 59 Categories