Skip to content
SPECIFICTION
Get listed

LittleDarwin

aliparsai.github.io

Free plan Linux

What it is

LittleDarwin is a Java mutation testing framework written in Python, available for Linux. It generates altered versions, or mutants, of Java source code, then runs a configured build command for each mutant to check whether the test suite detects the change. Its analysis has a mutation phase and a build phase, where each build is checked for success or failure. Users can select null-check or method-level mutation operators, or use all operators. The --higher-order option sets the mutation order, and the guide demonstrates second-order mutants. Project settings include a test project path and test command, build command, working directory, initial build command, cleanup commands, and build timeout. A Maven example runs `mvn clean test` for each mutant. Whitelist filters restrict analysis to selected packages or files, while blacklist filters exclude them. Generated mutants and full-analysis reports go into a LittleDarwinResults directory, and surviving mutants are reported. Installation uses pip, followed by running LittleDarwin as a Python module. The project is free under the GNU General Public License version 3 or later and is supported through donations.

Spec sheet

Purpose
LittleDarwin generates mutants of Java source code and runs a build command to check whether the test suite detects them.Read 9 Oct 2026 · aliparsai.github.io
Support
The maker invites users to email the author with feedback or suggestions.Read 8 Oct 2026 · littledarwin.parsai.net
License
The project is free software under the GNU General Public License, version 3 or later.Read 9 Oct 2026 · github.com
Analysis phases
It has a mutation phase that generates mutants and a build phase that runs a build command for each mutant and checks whether the build passes or fails.Read 8 Oct 2026 · aliparsai.github.io
Analysis scope
A whitelist can restrict analysis to listed packages or files, while a blacklist can exclude listed packages or files.Read 8 Oct 2026 · aliparsai.github.io
Build configuration
Users can provide build and test commands, working directory paths, an initial build command, cleanup commands, and a build timeout.Read 9 Oct 2026 · aliparsai.github.io
Build integration
Users can provide a build command; the documentation gives Maven clean test as an example.Read 8 Oct 2026 · aliparsai.github.io
Distribution
The project README instructs users to install the package with `pip3 install littledarwin`.Read 9 Oct 2026 · github.com
Funding
The maker states that the free and open-source project is supported through donations.Read 8 Oct 2026 · littledarwin.parsai.net
Higher order mutations
The usage guide demonstrates generating second order mutants with `--higher-order=2`.Read 9 Oct 2026 · aliparsai.github.io
Install
The usage guide says to install LittleDarwin with `pip install littledarwin` and run it as a Python module.Read 9 Oct 2026 · aliparsai.github.io
Installation
The documentation says to install LittleDarwin with pip and run it as a Python module.Read 8 Oct 2026 · aliparsai.github.io
Integration
The guide demonstrates running `mvn clean test` for each mutant in a Maven project.Read 9 Oct 2026 · aliparsai.github.io
Intended use
The maker describes LittleDarwin as designed for deployment in complex systems where other mutation tools may not work.Read 8 Oct 2026 · littledarwin.parsai.net
Mutation and build
It has a mutation phase that generates mutants and a build phase that runs a build command for each mutant and checks whether the build passes or fails.Read 9 Oct 2026 · aliparsai.github.io
Mutation operators
The command-line options include null-check and method-level mutation operators, as well as an option to use all operators.Read 8 Oct 2026 · aliparsai.github.io
Mutation options
The command line supports higher order, null check, method level, and all mutation operators, as well as whitelist and blacklist filters.Read 9 Oct 2026 · aliparsai.github.io
Reports
A full analysis generates a report in the `LittleDarwinResults` directory.Read 9 Oct 2026 · aliparsai.github.io
Results
The documentation says generated mutants and analysis reports are placed in a LittleDarwinResults directory.Read 8 Oct 2026 · aliparsai.github.io
Runtime
The project describes itself as a Java mutation testing framework written in Python.Read 9 Oct 2026 · github.com
Scope filters
A whitelist limits analysis to listed packages or files, while a blacklist excludes listed packages or files.Read 9 Oct 2026 · aliparsai.github.io
Test suite integration
The command-line options let users specify a test project path and a test command.Read 8 Oct 2026 · aliparsai.github.io

Plans and prices

Free and open-source Free Supported through donations Java mutation analysis framework Read 8 Oct 2026 · littledarwin.parsai.net

Every LittleDarwin plan and price →

Strong points and limits

Strong points

  • Supports configurable mutation operators
  • Can generate higher-order mutants
  • Build and test commands are configurable
  • Whitelist and blacklist filters scope analysis
  • Reports include surviving mutants

Limits

  • Available platform is Linux
  • Analyzes Java source code
  • Free project is supported through donations

Who it suits

LittleDarwin suits Java developers who want to check whether a project’s tests detect generated code changes. The maker describes it as intended for deployment in complex systems where other mutation tools may not work.

Verdict

LittleDarwin provides configurable Java mutation analysis, with project filters and build settings that can shape each run. Its Linux platform and Java focus are central fit considerations.

Where Specifiction places it

Alternatives to LittleDarwinAll alternatives →