poku
v1.9.4
Published
π· Poku makes testing easy for Node.js, Bun & Deno at the same time.
Downloads
1,391
Maintainers
Keywords
Readme
Poku
Poku can show you how simple testing can be π±
Enjoying Poku? Consider giving him a star βοΈ
π· DocumentationΒ Β β’Β Β π§ͺ ExamplesΒ Β β’Β Β π¬ Compare the Most Popular Test Runners
Reasons to Adopt a Poku β
No configurations Β Β Β Β Β Auto detect ESM and CJS Β Β Β Β Β Auto detect Typescript files Β Β Β Β Β Don't export your server (just run it) π
Less verbose High isolation level per file Β Β Β Β Β No eval needed π Β Β Β Β Β No global state Parallel and Sequential runs ππ½ππ»
Poku is 100% documented Designed to be human-friendly Compatible with Coverage tools Node.js, Bun and Deno compatibility π©΅
β¨ You are free to work with the packages you desire π§π»βπ You don't need to learn it all at once to get started π§π»βπ¬ Poku adapts to your test, not the other way around β Zero external dependencies (that means lightweight) π΄πΌ Poku doesn't restrict you from testing in legacy environments
Quickstart
Install π¦
npm i -D poku
npm i -D poku tsx
bun add -d poku
deno add npm:poku
Test it π¬
import { assert } from 'poku';
assert(true, 'Poku will describe it π·');
- Change from
.mjs
to.js
by defining"type": "module"
in your package.json. - Note that these examples use ESM, but you can use CJS as well.
Run it π
npx poku
bun poku
deno run npm:poku
That's it π
Available Methods
Essentials
- poku (test runner)
- assert (test assertion)
- startScript (run
package.json
scripts in a background process) - startService (run files in a background process)
Helpers
- beforeEach and afterEach
- test
- describe
- and much more β¨
See the complete documentation.
Overview
poku
| Sequential | Concurrent | | --------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | | | |
assert
- π Use it exactly as it's for Node.js
- π· Node.js, Bun and Deno compatibility
| Using poku
| Using node
|
| ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
| | |
Documentation and Examples
To see the detailed documentation, please visit the Documentation and Examples sections in the Poku's website.
Community
I'm continuously working to improve Poku. If you've got something interesting to share, feel free to submit a Pull Request. If you notice something wrong, I'd appreciate if you'd open an Issue.
Contributing
Please check the CONTRIBUTING.md for instructions π
Philosophy
Please check the Philosophy section from Documentation.
License
Poku is under the MIT License.
Security Policy
Please check the SECURITY.md and the section Is Poku Safe? from Documentation.
Limitations
- Poku is still a bit lonely, without an active community around him, but we can change it π€
- Each file generates a sub-process during its execution. This can be reflected in projects with an extremely high volume of test files when run in parallel.