Skip to content
SPECIFICTION
Get listed

Pure Test vs WSO2 Contract Test Runner

Pure Test

github.com

WSO2 Contract Test Runner

github.com

Side by side

FigurePure TestWSO2 Contract Test Runner
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
WebYes—
WindowsYes—
macOSYes—
LinuxYesYes
Self-hostedYesYes
Plans published11
Spec score · JavaScript Testing Frameworks8.0 (#6)7.1 (#19)
LicenseThe repository identifies the project as Apache-2.0 licensed.The repository identifies its license as Apache-2.0.
PurposePure Test is a minimal, zero-dependency, cross-runtime test runner.It is a consumer-based contract testing library that calls live REST API endpoints and compares their responses with predefined contract responses.

Plans

Pure Test

  • Apache-2.0 open-source softwareFree

Pure Test pricing →

WSO2 Contract Test Runner

  • Contract Test RunnerFree

WSO2 Contract Test Runner pricing →

In their own words

Pure Test

Pure Test is a free, minimal test runner for projects using JavaScript runtimes and browsers. It supports Node.js, Deno, Bun, Cloudflare Workers, and browsers, and its API includes test suites, assertions, lifecycle hooks, spies, fake timers, and retry and timeout options. The CLI provides multiple reporters, test filters, file watching, sharding, and fail-fast execution. For CI, `--shard` splits test files across jobs and exits cleanly when a shard has no files. TypeScript test discovery requires `--ts` on Node.js; it is automatic on Deno and Bun. A Deno adapter registers tests as `Deno.test()` calls for use with `deno test` and its filtering and IDE workflows. The README includes migration guides for Jest and Vitest and notes compatibility with common mock methods. Pure Test does not isolate tests, so lifecycle hooks are recommended for managing state. The project is beta, and its APIs may change. It is Apache-2.0 licensed, with no paid plans stated.

Visit github.com

WSO2 Contract Test Runner

WSO2 Contract Test Runner is a free, Apache-2.0-licensed library for consumer-based testing of live REST API endpoints. It sends requests and compares returned data with expected responses defined in JSON contracts. A contract can include a request, expected response, assertions, and optional post-conditions. Assertions cover status codes, JSON body and header paths, exact values, regular expressions, emptiness, structures, arrays, and objects. Tests run through Docker by mounting contract and configuration files into the documented image workflow. Suites can run contracts before or after tests, with before-suite contracts running synchronously. Post-conditions can place extracted values into suite-scoped or global environment variables, and contracts can pause for a specified number of seconds. The sample setup uses bearer authorization, cookies, a certificate keystore, and a client truststore. XML path support is listed as a todo. Deployment is Linux and self-hosted.

Visit github.com