@testingrequired/tf v0.0.23
tf
A testing framework.
Features
- Testing behavior agnostic
- Effortlessly extendable
- Most batteries included
Note
This is not a production ready project yet. Breaking changes should be expected.
Getting Started
Install
$ npm i -D @testingrequired/tf@latest
Supported Node Versions
latest
& lts
Executable
The framework doesn't provide an executable so you'll need to create one: ./bin/tf.js
import { run } from "@testingrequired/tf";
run();
Configure
This will do nothing so far. The framework makes zero assumptions about how you want it to behave. Unit testing, mocking, what your test syntax looks like. You will need to define that behavior using middleware in the executable:
import { run, config, middleware } from "@testingrequired/tf";
const { starter, matchTestFiles, specSyntax } = middleware;
run(config(starter, matchTestFiles("./tests/**/*.spec.js"), specSyntax));
A config
composes middleware to define that behavior. Here matchTestFiles
defines how to find the test files while specSyntax
defines how to read the them.
starter
is an optional middleware that bundles some of the core middlewares to get you started: randomize test order, run tests, report results and more. Of course you can skip this and define exactly what middleware you wish to use.
Wire Test Script
{
...package,
"scripts": {
"test": "node -r esm ./bin/tf.js"
}
}
This example uses esm
to support ES modules in your executable.
Write Tests
Create a test file: ./tests/example.spec.js
describe("increment value", () => {
let value = 0;
beforeEach(() => {
value++;
});
it("should equal correct value", () => assert(value === 1));
});
Run Tests
$ npm test
Example Project
See a simple implementation: https://github.com/testingrequired/tf-example
Next Steps
Middleware
Look through the growing list of available middleware to build the testing functionality your project needs.
More In Depth
The anatomy documentation explains how the framework is structured and how middleware works. This would be a good place to start if you want to write custom middleware.
Custom Middleware
Define the behavior required to run your tests by writing custom middleware.
Contributing
See development.
Built With
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago