Testing

Created at

||

Updated at

Find here and here a list of best practices for testing.


Frameworks

Here are some popular frameworks and libraries to check out regarding various types of testing.

Unit

This is the simplest form of testing. Its purpose is to test individual “units” of software and validate each piece works as expected in isolation.

You can find a sample usage of all the below libraries in this repository. Each library is setup with Typescript and React, and configured to run some simple tests N times, to provide a pretty basic performance benchmark. A more thorough review will follow.

Intern is also an option, but I could not set it up with Typescript.

E2E

E2E (End To End) is a software testing method that validates the entire software along with its integration with external interfaces.

Benchmarking

Benchmark testing measures a repeatable set of quantifiable results that serves as a point of reference against which units/services can be compared.

Property based

As stated in the fast-check repo, “property based testing frameworks check the truthfulness of properties. A property is a statement like: for all (x, y, …) such that precondition(x, y, …) holds predicate(x, y, …) is true”.

Mutation

Bugs, or “mutants”, are automatically inserted into the code. The tests are run for each mutant. If the tests fail then the mutant is killed. The higher the percentage of mutants killed, the more effective the tests are.

Visual


HTTP

Frameworks and libraries to help you test Node.js HTTP servers.

Benchmarking


Utilities

Assertions

Mocking

Jest specific

Fake data


Misc

⇜ Back to home