0.0.7 • Published 2 years ago

browser-unit-test v0.0.7

Weekly downloads
-
License
-
Repository
-
Last release
2 years ago

A minimal test runner that runs tests directly in the browser

Features

  • Modern platform features like esm & async / await
  • Test with the real DOM & Browser APIs
  • First class Typescript support & live reload: The test runner uses vite!
  • Easy and concise way to write tests
    export const aTest = () => assert(value !== 0);

Motivation behind this test runner

Getting started

  1. Install
npm i -D vite browser-unit-test
  1. Create scaffolding
npx browser-unit-test init
# or: pnpm exec browser-unit-test init
  1. Run tests
npx vite test
# or: pnpm exec vite test

Pro tip: Use browser debugging to see your test results directly in your IDE: e.g. VSCode browser debugging

Basics

Tests

Tests are just functions that are exported:

export const aTest = () => assert(value !== 0);

By default all the files that have a .test.js or a .test.ts ending in the /test folder get executed by the runner.

Asserts

Are asserts like this assert(value !== 0) really a good idea?

  • For readability: yes
  • For logging: normally no

You normally don't get the context of why the assertion failed when you use this pattern. But this library provides a small transform, which prints you the actual values for both sides of the comparison.

Test results

The test results will be displayed in the browser console, and are grouped by file and function.

Motivation

If you build code for targeting a web-browser. Why run unit tests in node.js? Because all the API are different and the logging and inspection is so great. Surely not :smile:. That is reason for this library, to define and run unit tests directly in the browser. (Note: there is currently no support for CI. It is only meant to run during development)

0.0.3

2 years ago

0.0.5

2 years ago

0.0.4

2 years ago

0.0.7

2 years ago

0.0.6

2 years ago

0.0.1

2 years ago

0.0.2

2 years ago

0.0.0

2 years ago