FREEDOM251

Freedom251 › API Testing Tools

EvoMaster

Free plan APILinuxMacSelf-hostedWindows

Visit EvoMaster Alternatives Pricing

EvoMaster's own site

What EvoMaster is

EvoMaster is a free tool that generates system-level tests through fuzzing for web and enterprise applications. It targets REST, GraphQL, and RPC APIs, including gRPC and Thrift. Black-box mode works against APIs in any programming language, while white-box mode analyzes JVM application bytecode. It generates JUnit 4 or 5 tests in Java or Kotlin, and test suites in Python or JavaScript. More than 30 oracles check for issues such as HTTP 500 responses, schema mismatches, BOLA, and SQL injection. White-box testing can analyze SQL and MongoDB interactions, with PostgreSQL, MySQL, H2, and MongoDB support. Authentication can use headers or cookies, including tokens or cookies obtained from a login endpoint. REST APIs require an OpenAPI schema; versions 2.0, 3.0, and 3.1 are supported, while 3.2 support is on hold. White-box testing requires a manually written driver, and the project does not yet automatically mock external services. PyPI is the recommended installation route, with Docker and an uber-fat JAR also available. It can run in GitHub Actions through a custom action.

Who it suits

EvoMaster suits developers who want to generate API tests for web or enterprise applications, especially teams working with REST, GraphQL, or RPC APIs. White-box users need a manually written driver, while REST users need a supported OpenAPI schema.

What it does well

  • Targets REST, GraphQL, and RPC APIs.
  • Generates tests in Java, Kotlin, Python, and JavaScript.
  • Uses more than 30 oracles to check for faults.
  • Can run in GitHub Actions.
  • Project says it has no telemetry.

What to know first

  • White-box testing requires a manually written driver.
  • Does not yet automatically mock external services.
  • REST APIs need an OpenAPI schema.
  • OpenAPI 3.2 support is on hold.

Limits

The free EvoMaster plan costs nothing. White-box testing requires a manually written driver, REST testing requires an OpenAPI schema, and automatic mocking of external services is not available.

Plans

PlanBilled and limitsPrice
EvoMasterNo monetary cost · Open source · no paid external services requiredFree

As github.com lists them, read 8 Oct 2026. The maker's own page has the final word.

Getting started

  1. Visit the EvoMaster GitHub project.
  2. Install through the recommended PyPI route, or use its Docker distribution or uber-fat JAR.
  3. Choose black-box or white-box testing; white-box testing requires a manually written driver.
  4. For REST APIs, provide an OpenAPI 2.0, 3.0, or 3.1 schema.
  5. Configure authentication headers or cookies if needed, including token or cookie retrieval from a login endpoint.
  6. Run EvoMaster against the application, or use its custom GitHub Actions action.

Overview

EvoMaster is a free, open-source fuzzing tool that builds system-level tests for web and enterprise applications. It suits engineering teams with API-heavy systems, particularly those able to supply an OpenAPI document or create a JVM test driver. Its broad protocol coverage and generated test formats make it a practical option for automated API assurance, while its setup requirements narrow its usefulness for some architectures.

Key features

The tool exercises REST, GraphQL, and RPC interfaces, including gRPC and Thrift. Black-box mode can target an API written in any programming language, which is the sensible choice for polyglot estates. White-box mode inspects JVM bytecode and can expose deeper application behavior, but it is confined to JVM applications and requires a manually authored driver.

Generated output includes JUnit 4 or 5 tests for Java or Kotlin, plus test suites in Python or JavaScript. That lets teams place results in existing language-specific test pipelines rather than adopting a proprietary format. More than 30 oracles look for failures such as HTTP 500 responses, schema mismatches, broken object-level authorization (BOLA), and SQL injection. These checks give the fuzzer a useful fault-finding remit beyond simple status-code assertions, although they do not replace a broader security program.

White-box runs can inspect SQL and MongoDB interactions, with PostgreSQL, MySQL, H2, and MongoDB supported. Authentication accepts headers and cookies, including tokens or cookies obtained dynamically from a login endpoint, which is important for protected APIs. REST targets must expose an OpenAPI schema: versions 2.0, 3.0, and 3.1 are supported, while 3.2 is not currently supported. There is no automatic mocking of external services, so dependent systems need to be reachable or handled by your own test environment.

The project reports no telemetry and says it needs no internet service beyond the application under test. GitHub Actions integration and a Docker image suit CI workflows. PyPI is the recommended installation route; an uber-fat JAR is also provided. Windows MSI, macOS DMG, and Linux DEB installers are deprecated, so those packages are a poor basis for a new deployment.

Pricing

EvoMaster costs 0.00 USD on its free plan, billed with no monetary cost. It is open source and requires no paid external services. There is no free trial because the product is already offered as a free plan, and no paid tiers, seat charges, usage quotas, renewal terms, or time limits are published. The LGPL v3 licence permits teams to evaluate and operate the source under its terms, with support routed through GitHub issues and discussions rather than a commercial support plan.

Platforms

EvoMaster is listed for API, Linux, macOS, self-hosted, and Windows use. Docker and the JAR make self-hosted and CI deployment straightforward in principle, while the deprecated native installers mean package-based desktop installation should not be the default plan.

Who it's for

Choose EvoMaster when your team needs generated system tests across several API styles and wants outputs that fit Java, Kotlin, Python, or JavaScript pipelines. It is especially appropriate for API owners with OpenAPI contracts, JVM teams prepared to write a white-box driver, and organizations that want fuzzing in GitHub Actions without sending telemetry to a hosted service.

It is a weaker fit for REST services without an OpenAPI schema, non-JVM teams seeking white-box analysis, or environments whose critical dependencies must be mocked automatically. Those teams should first confirm that they can provide the required driver and manage external-service dependencies themselves.

Pros and cons

Pros

  • Supports REST, GraphQL, gRPC, Thrift, and other RPC testing, covering varied API estates.
  • Black-box mode works with any programming language, avoiding a language lock-in for the system under test.
  • Produces JUnit, Python, and JavaScript tests that can join established CI pipelines.
  • More than 30 oracles include checks for BOLA, SQL injection, schema errors, and HTTP 500 responses.
  • No telemetry requirement, with Docker, a JAR, PyPI, and GitHub Actions options for self-hosted operation.

Cons

  • REST testing depends on an OpenAPI 2.0, 3.0, or 3.1 schema; OpenAPI 3.2 is not supported.
  • White-box testing is JVM-only and needs a manually written driver.
  • External services are not mocked automatically, increasing test-environment work for distributed systems.
  • Native MSI, DMG, and DEB installers are deprecated.
  • Documentation and usage help are directed to community GitHub issues and discussions rather than a paid support channel.

Alternatives

For a broader directory of Fuzz Testing Software, compare tools by their fuzzing focus. The API Testing Tools list is a better starting point when contract and endpoint testing matter more than generated system tests. Teams managing large repositories can review Monorepo Management Tools instead.

Bazel is a free, open-source build and test tool from Google; choose it when build orchestration is the primary need rather than API fuzzing. bento offers a free tier with 10 GB of storage and 14-day retention, making it relevant when artifact storage and retention are the deciding factors. Bit is free and open source with free personal Bit Cloud use, suited to component sharing across web and mobile projects. Blaze is free to use for teams seeking a general development tool. Bun is an MIT-licensed JavaScript runtime and toolkit, so pick it for JavaScript runtime and tooling needs. FerrFlow is a free, MIT-licensed single Rust binary for teams wanting that style of utility. manypkg is a free MIT-licensed CLI from Thinkmill for package-management workflows. mise is a free MIT-licensed tool for macOS, Linux, and Windows when environment and tool-version management is the goal.

Verdict

EvoMaster is a strong choice for teams that want no-cost, self-hosted fuzz-based generation across REST, GraphQL, and RPC APIs, with test output that fits common programming languages and CI systems. Choose it when you can supply OpenAPI contracts or a JVM driver and can control external dependencies. Look elsewhere if those prerequisites are unavailable or automatic service mocking is essential.

Verdict

EvoMaster provides free fuzz-based test generation across several API types and programming languages. Account for the white-box driver requirement and the lack of automatic external-service mocking when planning its use.

Questions

How much does EvoMaster cost?

The EvoMaster plan is free. It is open source under LGPL v3.

Which APIs does EvoMaster target?

It targets REST, GraphQL, and RPC APIs, including gRPC and Thrift. REST APIs need an OpenAPI schema in version 2.0, 3.0, or 3.1.

Which platforms does it support?

The listed platforms are API, Linux, macOS, self-hosted, and Windows. It is distributed through PyPI, Docker, and an uber-fat JAR; listed Windows MSI, macOS DMG, and Linux DEB installers are deprecated.

What kinds of tests does it generate?

It generates JUnit 4 or 5 tests in Java or Kotlin, plus test suites in Python or JavaScript.

Does EvoMaster integrate with CI/CD?

It can run in GitHub Actions through a custom action.

Where can users get help?

The project directs documentation and usage questions to GitHub issues and discussions.

Facts from EvoMaster's own pages

API coverage
It targets REST, GraphQL, and RPC APIs, including gRPC and Thrift. · github.com, 8 Oct 2026
Authentication
It supports authentication headers and cookies, including dynamically obtaining tokens or cookies from a login endpoint. · github.com, 8 Oct 2026
Database support
For white-box testing, it can analyze SQL and MongoDB interactions and supports PostgreSQL, MySQL, H2, and MongoDB. · github.com, 8 Oct 2026
Fault detection
Its heuristics check for issues including HTTP 500 responses, schema mismatches, BOLA, and SQL injection, using more than 30 oracles. · github.com, 8 Oct 2026
Founded
2016 · github.com, 28 Sept 2026
Installation
The recommended install method is PyPI; the project also provides an uber-fat JAR and Docker distribution. · github.com, 8 Oct 2026
Integrations
It can run in GitHub Actions through a custom action and is distributed as a Docker image. · github.com, 8 Oct 2026
Known limitations
White-box testing requires a manually written driver, and EvoMaster does not yet automatically mock external services. · github.com, 8 Oct 2026
License and funding
The source code is released under LGPL v3 and the project reports funding from ERC and the Research Council of Norway. · github.com, 8 Oct 2026
Platform installers
Windows MSI, macOS DMG, and Linux DEB installers are listed as deprecated. · github.com, 8 Oct 2026
Purpose
EvoMaster automatically generates system-level tests through fuzzing for web and enterprise applications. · github.com, 8 Oct 2026
REST schema limits
REST APIs need an OpenAPI schema; versions 2.0, 3.0, and 3.1 are supported, while 3.2 support is on hold. · github.com, 8 Oct 2026
Security and privacy
The project says it has no telemetry and does not require internet services beyond the application being tested. · github.com, 8 Oct 2026
Support
The project directs users to GitHub issues and discussions for documentation and usage questions. · github.com, 8 Oct 2026
Test generation
It generates JUnit 4 or 5 tests in Java or Kotlin and test suites in Python or JavaScript. · github.com, 8 Oct 2026
Testing modes
Black-box mode can run against APIs in any programming language, while white-box mode analyzes JVM application bytecode. · github.com, 8 Oct 2026

Where EvoMaster stands on Freedom251

Look at these too