Alternatives to PHPUnit
Compare PHPUnit alternatives for your business or organization using the curated list below. SourceForge ranks the best alternatives to PHPUnit in 2025. Compare features, ratings, user reviews, pricing, and more from PHPUnit competitors and alternatives in order to make an informed decision for your business.
-
1
Parasoft
Parasoft
Parasoft helps organizations continuously deliver high-quality software with its AI-powered software testing platform and automated test solutions. Supporting embedded and enterprise markets, Parasoft’s proven technologies reduce the time, effort, and cost of delivering secure, reliable, and compliant software by integrating everything from deep code analysis and unit testing to UI and API testing, plus service virtualization and complete code coverage, into the delivery pipeline. A powerful unified C and C++ test automation solution for static analysis, unit testing and structural code coverage, Parasoft C/C++test helps satisfy compliance with industry functional safety and security requirements for embedded software systems.">
-
2
Early
EarlyAI
Early is an AI-driven tool designed to automate the generation and maintenance of unit tests, enhancing code quality and accelerating development processes. By integrating with Visual Studio Code (VSCode), Early enables developers to produce verified and validated unit tests directly from their codebase, covering a wide range of scenarios, including happy paths and edge cases. This approach not only increases code coverage but also helps identify potential issues early in the development cycle. Early supports TypeScript, JavaScript, and Python languages, and is compatible with testing frameworks such as Jest and Mocha. The tool offers a seamless experience by allowing users to quickly access and refine generated tests to meet specific requirements. By automating the testing process, Early aims to reduce the impact of bugs, prevent code regressions, and boost development velocity, ultimately leading to the release of higher-quality software products.Starting Price: $19 per month -
3
CodeRush
DevExpress
Try your first CodeRush feature right now and see instantly just how powerful it is. Refactoring for C#, Visual Basic, and XAML, with the fastest test .NET runner available, next generation debugging, and the most efficient coding experience on the planet. Quickly find symbols and files in your solution and easily navigate to code constructions related to the current context. CodeRush includes the Quick Navigation and Quick File Navigation features, which make it fast and easy to find symbols and open files. Using the Analyze Code Coverage feature, you can discover what parts of your solution are covered by unit tests, and find the at-risk parts of your application. The Code Coverage window shows percentage of statements covered by unit tests for each namespace, type, and member in your solution.Starting Price: $49.99 one time payment -
4
LDRA Tool Suite
LDRA
The LDRA tool suite is LDRA’s flagship platform that delivers open and extensible solutions for building quality into software from requirements through to deployment. The tool suite provides a continuum of capabilities including requirements traceability, test management, coding standards compliance, code quality review, code coverage analysis, data-flow and control-flow analysis, unit/integration/target testing, and certification and regulatory support. The core components of the tool suite are available in several configurations that align with common software development needs. A comprehensive set of add-on capabilities are available to tailor the solution for any project. LDRA Testbed together with TBvision provide the foundational static and dynamic analysis engine, and a visualization engine to easily understand and navigate standards compliance, quality metrics, and code coverage analyses. -
5
dotCover
JetBrains
dotCover is a .NET unit testing and code coverage tool that works right in Visual Studio and in JetBrains Rider, helps you know to what extent your code is covered with unit tests, provides great ways to visualize code coverage, and is Continuous Integration ready. dotCover calculates and reports statement-level code coverage in applications targeting .NET Framework, .NET Core, Mono for Unity, etc. dotCover is a plug-in to Visual Studio and JetBrains Rider, giving you the advantage of analyzing and visualizing code coverage without leaving the code editor. This includes running unit tests and analyzing coverage results right in the IDEs, as well as support for different color themes, new icons and menus. dotCover comes bundled with a unit test runner that it shares with another JetBrains tool for .NET developers, ReSharper. dotCover supports continuous testing, a modern unit testing workflow whereby dotCover figures out on-the-fly which unit tests are affected by your code changes.Starting Price: $399 per user per year -
6
Typemock
Typemock
The easiest way to unit test. Write tests without changing your code! Even legacy code. Static methods, private methods, non-virtual methods, out parameters and even members and fields. Our professional edition is free for developers around the world. We also have paid support package. Improve your code integrity and deliver quality code. Fake entire object models with a single statement. Mock statics, private, constructors, events, linq, ref args, live, future, static constructors. Our suggest feature creates automated test suggestions suitable for your code. Our smart runner will run only your impact tests and get you super fast feedback. Our coverage feature displays your code coverage in your editor while you code.Starting Price: $479 per license per year -
7
Jtest
Parasoft
Meet Agile development cycles while maintaining high-quality code. Use Jtest’s comprehensive set of Java testing tools to ensure defect-free coding through every stage of software development in the Java environment. Streamline Compliance With Security Standards. Ensure your Java code complies with industry security standards. Have compliance verification documentation automatically generated. Release Quality Software, Faster. Integrate Java testing tools to find defects faster and earlier. Save time and money by mitigating complicated and expensive problems down the line. Increase Your Return From Unit Testing. Achieve code coverage targets by creating a maintainable and optimized suite of JUnit tests. Get faster feedback from CI and within your IDE using smart test execution. Parasoft Jtest integrates tightly into your development ecosystem and CI/CD pipeline for real-time, intelligent feedback on your testing and compliance progress. -
8
Xdebug
Xdebug
Xdebug is an extension for PHP, and provides a range of features to improve the PHP development experience. A way to step through your code in your IDE or editor while the script is executing. An improved var_dump() function, stack traces for notices, warnings, errors, and exceptions to highlight the code path to the error. Writes every function call, with arguments and invocation location to disk. Optionally also includes every variable assignment and return value for each function. Allows you, with the help of visualization tools, to analyze the performance of your PHP application and find bottlenecks. Shows which parts of your code base are executed when running unit tests with PHPUnit. Installing Xdebug with a package manager is often the fastest way. You can substitute the PHP version with the one that matches the PHP version that you are running. You can install Xdebug through PECL on Linux & macOS with Homebrew.Starting Price: Free -
9
TestNG
TestNG
TestNG is a testing framework inspired from JUnit and NUnit but introducing some new functionalities that make it more powerful and easier to use, such as annotations, or the possibility to run your tests in arbitrarily big thread pools with various policies available (all methods in their own thread, one thread per test class, etc.). You can test that your code is multithread safe, there is flexible test configuration, support for data-driven testing (with @DataProvider), support for parameters, powerful execution model (no more TestSuite). There is a supported by a variety of tools and plug-ins (Eclipse, IDEA, Maven, etc.), it also embeds BeanShell for further flexibility, and there is default JDK functions for runtime and logging (no dependencies), and dependent methods for application server testing. TestNG is designed to cover all categories of tests, unit, functional, end-to-end, integration, etc. -
10
PCOV
PCOV
A self-contained CodeCoverage compatible driver for PHP. When PCOV is left unset, PCOV will attempt to find src, lib or, app in the current working directory, in that order; If none are found the current directory will be used, which may waste resources storing coverage information for the test suite. If PCOV contains test code, it's recommended to set the exclude command to avoid wasting resources. To avoid unnecessary allocation of additional arenas for traces and control flow graphs, PCOV should be set according to the memory required by the test suite. To avoid reallocation of tables, PCOV should be set to a number higher than the number of files that will be loaded during testing, inclusive of test files. interoperability with Xdebug is not possible. At an internal level, the executor function is overridden by PCOV, so any extension or SAPI which does the same will be broken. PCOV is zero cost, code runs at full speed.Starting Price: Free -
11
Diffblue Cover
Diffblue
Diffblue Cover analyzes your existing Java program and writes unit regression tests that reflect the current behavior of the code. The CLI tool works 100% autonomously, configuring itself from your Maven or Gradle environment. By bringing automation to the test-writing process, the CLI tool provides a speed boost for organizations that are working towards achieving DevOps goals like CI/CD. Since it fits into a CI pipeline, the CLI tool protects the whole codebase from regressions by shifting testing left. Diffblue Cover's unit regression tests run fast and verify new code changes immediately, helping users detect undesirable changes in the code’s behavior as early as possible, when they're the quickest, easiest, and cheapest to fix. And tests are automatically maintained, saving teams even more time.Starting Price: Free -
12
Komodo Edit
ActiveState
Komodo Edit is a great editor if you’re looking for something powerful, yet simple. Komodo IDE provides more robust functionality such as debugging, unit testing, code refactoring and code profiling. Software vendors are increasingly the front line of security for their customers since one compromised patch or upgrade can make hundreds or even thousands of your customers susceptible to cyberattacks. Don’t be the next SolarWinds. Rather than implementing multiple point solutions and custom code, the ActiveState Platform can provide you with an out-of-the-box solution that helps ensure the security and integrity of the open source components you import, work with and run.Starting Price: $84 per month -
13
Cantata
QA Systems
Cantata is a unit and integration testing tool, enabling developers to verify standard compliant or business critical code on host native and embedded target platforms. Cantata helps accelerate compliance with the standard’s dynamic testing requirements by automating test framework generation, test execution. results diagnostics and report generation. Cantata is integrated with an extensive set of embedded development toolchains, from compilers and static analysis tools to build and requirements management tools. The ECLIPSE® GUI, tight tool integrations and tests written in the source C/C++ code, all make Cantata easy to use. Cantata has been independently certified by SGS-TÜV SAAR GmbH for the main software safety standards. Standard specific Cantata tool certification kits are provided free of charge and contain everything needed out-of-the-box as well as comprehensive guidance to help you achieve certification for your device software. -
14
LuaCov
LuaCov
LuaCov is a simple coverage analyzer for Lua scripts. When a Lua script is run with the luacov module loaded, it generates a stats file with the number of executions of each line of the script and its loaded modules. The luacov command-line script then processes this file generating a report file which allows one to visualize which code paths were not traversed, which is useful for verifying the effectiveness of a test suite. LuaCov includes several configuration options, which have their defaults stored in src/luacov/defaults.lua. These are the global defaults. To use project specific configuration, create a Lua script setting options as globals or returning a table with some options and store it as .luacov in the project directory from where luacov is being run. For example, this config informs LuaCov that only foo module and its submodules should be covered and that they are located inside src directory.Starting Price: Free -
15
UndercoverCI
UndercoverCI
Actionable test coverage for Ruby and GitHub. Checks and insights to help your team ship healthy code while saving time on PR reviews. Stop focusing on getting to 100% test coverage. Reduce pull request defects by telling when the changed code is untested before it's deployed to production. The CI server runs tests and uploads coverage data to UndercoverCI. That's the only required post-install setup step! We scan the PR diff and verify local test coverage for each updated class, method, and block because an absolute percentage check is not enough. Reveal untested methods and blocks, find unused code paths, and improve your test suite. Install UndercoverCI's hosted GitHub App or explore the Ruby gems family. Fully-featured GitHub App code review integration with quick setup for your organization. The UndercoverCI project and related Ruby gems are entirely open-source and free to use locally and in your CI/CD workflows.Starting Price: $49 per month -
16
Catch2
Catch2
Catch2 is mainly a unit testing framework for C++, but it also provides basic micro-benchmarking features and simple BDD macros. Catch2's main advantage is that using it is both simple and natural. Test names do not have to be valid identifiers, assertions look like normal C++ boolean expressions, and sections provide a nice and local way to share set-up and tear-down code in tests. You are on the devel branch, where the v3 version is being developed. v3 brings a bunch of significant changes, the big one being that Catch2 is no longer a single-header library. Catch2 now behaves as a normal library, with multiple headers and separately compiled implementation. Quick and easy to get started. Just download two files, add them to your project and you're away. No external dependencies. As long as you can compile C++14 and have the C++ standard library available. Write test cases as, self-registering, functions (or methods, if you prefer).Starting Price: Free -
17
XCTest
Apple
Create and run unit tests, performance tests, and UI tests for your Xcode project. Use the XCTest framework to write unit tests for your Xcode projects that integrate seamlessly with Xcode's testing workflow. Tests assert that certain conditions are satisfied during code execution, and record test failures (with optional messages) if those conditions aren’t satisfied. Tests can also measure the performance of blocks of code to check for performance regressions and can interact with an application's UI to validate user interaction flows. A test method is a small, self-contained method that tests a specific part of your code. A test case is a group of related test methods. Add test cases and test methods to a test target to confirm that your code performs as expected. The primary class for defining test cases, test methods, and performance tests. An abstract base class for creating, managing, and executing tests.Starting Price: Free -
18
HUnit
Hackage
HUnit is a unit testing framework for Haskell, inspired by the JUnit tool for Java. It's easy to use HUnit, assuming you are familiar with Haskell, though not necessarily with JUnit. A test-centered methodology for software development is most effective when tests are easy to create, change, and execute. The JUnit tool pioneered support for test-first development in Java. HUnit is an adaptation of JUnit to Haskell, a general-purpose, purely functional programming language. With HUnit, as with JUnit, you can easily create tests, name them, group them into suites, and execute them, with the framework checking the results automatically. Test specification in HUnit is even more concise and flexible than in JUnit, thanks to the nature of the Haskell language. HUnit currently includes only a text-based test controller, but the framework is designed for easy extension. Run the tests as a group.Starting Price: Free -
19
Coverlet
Coverlet
It works with .NET Framework on Windows and .NET Core on all supported platforms. Coverlet supports coverage for deterministic builds. The solution at the moment is not optimal and need a workaround. If you want to visualize coverlet output inside Visual Studio while you code, you can use the following addins depending on your platform. Coverlet also integrates with the build system to run code coverage after tests. Enabling code coverage is as simple as setting the CollectCoverage property to true. The coverlet tool is invoked by specifying the path to the assembly that contains the unit tests. You also need to specify the test runner and the arguments to pass to the test runner using the --target and --targetargs options respectively. The invocation of the test runner with the supplied arguments must not involve a recompilation of the unit test assembly or no coverage result will be generated.Starting Price: Free -
20
Refraction
Refraction
Refraction is a code-generation tool for developers. It uses AI to generate code for you. You can use it to generate unit tests, documentation, refactor code, and more. Generate code using AI in 34 languages — Assembly, C#, C++, CoffeeScript, CSS, Dart, Elixir, Erlang, Go, GraphQL, Groovy, Haskell, HTML, Java, JavaScript, Kotlin, LaTeX, Less, Lua, MatLab, Objective-C, OCaml, Perl, PHP, Python, R Lang, Ruby, Rust, Sass / SCSS, Scala, Shell, SQL, Swift, and TypeScript. Join thousands of developers around the world using Refraction to generate documentation, create unit tests, refactor code, and more using AI. Use the power of AI to automate the tedious parts of software development like testing, documentation, and refactoring, so you can focus on what matters. Refactor, optimize, fix and style-check your code. Generate unit tests for your code with various test frameworks. Explain the purpose of your code to make it easier to understand.Starting Price: $8 per month -
21
NCover
NCover
NCover Desktop is a Windows application that helps you collect code coverage statistics for .NET applications and services. After coverage is collected, Desktop displays charts and coverage metrics in a browser-based GUI that allows you to drill all the way down to your individual lines of source code. Desktop also allows you the option to install a Visual Studio extension called Bolt. Bolt offers built-in code coverage that displays unit test results, timings, branch visualization and source code highlighting right in the Visual Studio IDE. NCover Desktop is a major leap forward in the ease and flexibility of code coverage tools. Code coverage, gathered while testing your .NET code, shows the NCover user what code was exercised during the test and gives a specific measurement of unit test coverage. By tracking these statistics over time, you gain a concrete measurement of code quality during the development cycle.Starting Price: Free -
22
Istanbul
Istanbul
JavaScript test coverage made simple. Istanbul instruments your ES5 and ES2015+ JavaScript code with line counters, so that you can track how well your unit-tests exercise your codebase. The nyc command-line-client for Istanbul works well with most JavaScript testing frameworks, tap, mocha, AVA, etc. First-class support of ES6/ES2015+ using babel-plugin-Istanbul. Support for the most popular JavaScript testing frameworks. Support for instrumenting subprocesses, using the nyc command-line interface. Adding coverage to your mocha tests could not be easier. Now, simply place the command nyc in front of your existing test command. nyc's instrument command can be used to instrument source files outside of the context of your unit tests. nyc is able to show you all Node processes that are spawned when running a test script under it. By default, nyc uses Istanbul's text reporter. However, you may specify an alternative reporter.Starting Price: Free -
23
Telerik JustMock
Progress Telerik
JustMock allows you to easily isolate your testing scenario and lets you focus on the logic you want to verify. It integrates seamlessly with your favorite unit testing framework and makes unit testing and mocking simple and fast. Mock everything like non-virtual methods, sealed classes, static methods and classes, as well as non-public members and types everywhere even members of MsCorLib. The perfect tool for unit testing your .NET code whether you're dealing with complex and hard to maintain legacy code or code written with best practices in mind. From finding what arguments your mock object is called with to why it’s not called or why it’s called repeatedly, the JustMock Debug Window helps you find the answers you are looking for while debugging your unit tests. JustMock allows you to receive critical feedback about the completeness and thoroughness of your unit tests—an absolute must for any organization that strives for high-quality code.Starting Price: $399 per developer -
24
JCov
OpenJDK
The JCov open-source project is used to gather quality metrics associated with the production of test suites. JCov is being opened in order to facilitate the practice of verifying test execution of regression tests in OpenJDK development. The main motivation behind JCov is the transparency of test coverage metrics. The advantage to promoting standard coverage based on JCov is that OpenJDK developers will be able to use a code coverage tool that stays in the 'lock step' with Java language and VM developments. JCov is a pure java implementation of a code coverage tool that provides a means to measure and analyze dynamic code coverage of Java programs. JCov provides functionality to collect method, linear block, and branch coverage, as well as show uncovered execution paths. It is also able to show a program's source code annotated with coverage information. From a testing perspective, JCov is most useful to determine execution paths.Starting Price: Free -
25
OpenCppCoverage
OpenCppCoverage
OpenCppCoverage is an open-source code coverage tool for C++ under Windows. The main usage is for unit testing coverage, but you can also use it to know the executed lines in a program for debugging purposes. Support compiler with a program database file (.pdb). Just run your program with OpenCppCoverage, no need to recompile your application. Exclude a line based on a regular expression. Coverage aggregation, to run several code coverages and merge them into a single report. Requires Microsoft Visual Studio 2008 or higher for all editions including the Express edition. It should also work with the previous version of Visual Studio. You can run the tests with the Test Explorer window.Starting Price: Free -
26
Coverage.py
Coverage.py
Coverage.py is a tool for measuring code coverage of Python programs. It monitors your program, noting which parts of the code have been executed, then analyzes the source to identify code that could have been executed but was not. Coverage measurement is typically used to gauge the effectiveness of tests. It can show which parts of your code are being exercised by tests, and which are not. Use coverage run to run your test suite and gather data. However you normally run your test suite, and you can run your test runner under coverage. If your test runner command starts with “python”, just replace the initial “python” with “coverage run”. To limit coverage measurement to code in the current directory, and also find files that weren’t executed at all, add the source argument to your coverage command line. By default, it will measure line (statement) coverage. It can also measure branch coverage. It can tell you what tests ran which lines.Starting Price: Free -
27
PowerMock
PowerMock
Writing unit tests can be hard and sometimes good design has to be sacrificed for the sole purpose of testability. Often testability corresponds to good design, but this is not always the case. For example final classes and methods cannot be used, private methods sometimes need to be protected or unnecessarily moved to a collaborator, static methods should be avoided completely and so on simply because of the limitations of existing frameworks. PowerMock is a framework that extends other mock libraries such as EasyMock with more powerful capabilities. PowerMock uses a custom classloader and bytecode manipulation to enable mocking of static methods, constructors, final classes and methods, private methods, removal of static initializers and more. By using a custom classloader no changes need to be done to the IDE or continuous integration servers which simplifies adoption.Starting Price: Free -
28
Codecov
Codecov
Develop healthier code. Improve your code review workflow and quality. Codecov provides highly integrated tools to group, merge, archive, and compare coverage reports. Free for open source. Plans starting at $10/user per month. Ruby, Python, C++, Javascript, and more. Plug and play into any CI product and workflow. No setup required. Automatic report merging for all CI and languages into a single report. Get custom statuses on any group of coverage metrics. Review coverage reports by project, folder and type test (unit tests vs integration tests). Detailed report commented directly into your pull request. Codecov is SOC 2 Type II certified, which means a third-party audits and attests to our practices to secure our systems and your data.Starting Price: $10 per user per month -
29
GoLand
JetBrains
On-the-fly error detection and suggestions for fixes, quick and safe refactorings with one-step undo, intelligent code completion, dead code detection, and documentation hints help all Go developers, from newbies to experienced professionals, to create fast, efficient, and reliable code. Exploring and understanding team, legacy, or foreign projects takes a lot of time and effort. GoLand code navigation helps you get around with instant switching to shadowed methods, implementations, usages, declarations, or interfaces implemented by types. Jump between types, files or any other symbols, or find their usages and examine them with convenient grouping by usage type. Powerful built-in tools help to run and debug your applications. You can write and debug tests without any additional plugins or configuration effort, and test your applications right in the IDE. A built-in Code Coverage tool will make sure that your tests don’t miss anything important.Starting Price: $199 per user per year -
30
Appvance
Appvance.ai
Appvance IQ (AIQ) delivers transformational productivity gains and lower costs in both test creation and execution. For test creation, it offers both AI-driven (fully machine-generated tests) and also 3rd-generation, codeless scripting. It then executes those scripts through data-driven functional, performance, app-pen and API testing — for both web and mobile apps. AIQ’s self-healing technology gives you complete code coverage with just 10% the effort of traditional testing systems. Most importantly, AIQ finds important bugs autonomously, with little effort. No coding, scripting, logs or recording required. AIQ is easy to integrate with your current DevOps tools and processes. Appvance IQ was developed by a pioneering team who envisioned a better way to test. Their innovative vision has been made possible by applying differentiated, patented AI methods to test creation while leveraging today’s high-availability compute resources for massive levels of parallel execution. -
31
GitAuto
GitAuto
GitAuto is an AI-powered coding agent that integrates with GitHub (and optional Jira) to read backlog tickets or issues, analyze your repository’s file tree and code, then autonomously generate and review pull requests, typically within three minutes per ticket. It can handle bug fixes, feature requests, and test coverage improvements. You trigger it via issue labels or dashboard selections, it writes code or unit tests, opens a PR, runs GitHub Actions, and automatically fixes failing tests until they pass. GitAuto supports ten programming languages (e.g., Python, Go, Rust, Java), is free for basic usage, and offers paid tiers for higher PR volumes and enterprise features. It follows a zero data‑retention policy; your code is processed via OpenAI but not stored. Designed to accelerate delivery by enabling teams to clear technical debt and backlogs without extensive engineering resources, GitAuto acts like an AI backend engineer that drafts, tests, and iterates.Starting Price: $100 per month -
32
Tarpaulin
Tarpaulin
Tarpaulin is a code coverage reporting tool for the cargo build system, named for a waterproof cloth used to cover cargo on a ship. Currently, tarpaulin provides working line coverage and while fairly reliable may still contain minor inaccuracies in the results. A lot of work has been done to get it working on a wide range of projects, but often unique combinations of packages and build features can cause issues so please report anything you find that's wrong. Also, check out our roadmap for planned features. On Linux Tarpaulin's default tracing backend is still Ptrace and will only work on x86 and x64 processors. This can be changed to the llvm coverage instrumentation with engine llvm, for Mac and Windows this is the default collection method. It can also be run in Docker, which is useful for when you don't use Linux but want to run it locally.Starting Price: Free -
33
DeepCover
DeepCover
Deep Cover aims to be the best coverage tool for Ruby code. More accurate line coverage, and branch coverage. It can be used as a drop-in replacement for the built-in Coverage library. It reports a more accurate picture of your code usage. In particular, a line is considered covered if and only if it is entirely executed. Optionally, branch coverage will detect if some branches are never taken. MRI considers every method defined, including methods defined on objects or via define_method, class_eval, etc. For Istanbul output, DeepCover has a different approach and covers all def and all blocks. DeepCover doesn't consider loops to be branches, but it's easy to support them if needed. Even after DeepCover is required and configured, only a very minimal amount of code is actually loaded and coverage is not started. To make it easier to transition for projects already using the builtin Coverage library deep-cover can inject itself into those tools.Starting Price: Free -
34
OpenText Dimensions CM
OpenText
Allows for collaborative parallel development to minimize rework, visualize and reduce conflict, and lower risk while improving team velocity and throughput. Preserves the integrity of known baseline configurations, simplifies rollback and recovery, streamlines approval, and maintains integrity when automating builds and deployments. Identifying issues earlier in the lifecycle saves considerable time and effort. CM allows issues to be identified as soon as a code commit occurs via Pulse. CI build, unit test and code review all drive shift left actions. Features integration with developer friendly repositories and IDEs (such as Git, IntelliJ, Eclipse and Microsoft .net), detailed auditing and logging, and immutable versioning and history. Minimizes the preparation and effort required for audits and regulatory compliance with comprehensive and tamperproof history and audit trails. -
35
WireMock
WireMock
WireMock is a simulator for HTTP-based APIs. Some might consider it a service virtualization tool or a mock server. It enables you to stay productive when an API you depend on doesn't exist or isn't complete. It supports testing of edge cases and failure modes that the real API won't reliably produce. And because it's fast it can reduce your build time from hours down to minutes. MockLab is a hosted API simulator built on WireMock, with an intuitive web UI, team collaboration and nothing to install. The 100% compatible API supports drop-in replacement of the WireMock server with a single line of code. Run WireMock from within your Java application, JUnit test, Servlet container or as a standalone process. Match request URLs, methods, headers cookies and bodies using a wide variety of strategies. First class support for JSON and XML. Get up and running quickly by capturing traffic to and from an existing API. -
36
dbForge Unit Test
Devart
dbForge Unit Tests for SQL Server is a GUI-based tool available as an add-in for SQL Server Management Studio. This tool enables users to implement and automate unit testing directly within SSMS. Key Features: Customizable unit tests for SQL Server databases Direct test execution with the convenient single-tab Test List Manager Access from the SSMS Object Explorer Extensive tSQLt management Unit tests in T-SQL Predefined unit tests Test class management You can always find the latest version of the product on tStarting Price: $169.95 -
37
xUnit.net
xUnit.net
xUnit.net is a free, open source, community-focused unit testing tool for the .NET Framework. Written by the original inventor of NUnit v2, xUnit.net is the latest technology for unit testing C#, F#, VB.NET and other .NET languages. xUnit.net works with ReSharper, CodeRush, TestDriven.NET and Xamarin. It is part of the .NET Foundation, and operates under their code of conduct.Starting Price: Free -
38
Embunit
Embunit
Embunit is a unit testing tool for programmers and testers developing software in C or C++. It is aimed at embedded software development, but can be used to create unit tests for any software written in C or C++. Embunit eliminates the mundane, repetitive aspects of writing unit tests, leaving you free to concentrate on defining the test behaviour. This is achieved by specifying a sequence of actions as shown in the example screenshot below. Embunit generates the unit test source code automatically. Embunit has been developed with flexibility in mind, and can be customised to create unit tests for virtually any hardware platform; even the smallest microcontrollers. It is not tied to any specific toolset and is designed to accommodate the common limitations of embedded C++ compilers.Starting Price: $131.19 per user -
39
unittest
Python
The unittest unit testing framework was originally inspired by JUnit and has a similar flavor as major unit testing frameworks in other languages. It supports test automation, sharing of setup and shutdown code for tests, aggregation of tests into collections, and independence of the tests from the reporting framework. A test fixture represents the preparation needed to perform one or more tests, and any associated cleanup actions. This may involve, for example, creating temporary or proxy databases, directories, or starting a server process. A test suite is a collection of test cases, test suites, or both. It is used to aggregate tests that should be executed together. A test runner is a component which orchestrates the execution of tests and provides the outcome to the user. The runner may use a graphical interface, a textual interface, or return a special value to indicate the results of executing the tests.Starting Price: Free -
40
TESSY
Razorcat
TESSY automates the whole unit test cycle including regression testing for your embedded software in C/C++ on different target systems. As an easy-to-install and easy-to-operate testing tool TESSY guides you through the unit test workflow from the project setup through the test design and execution to the result analysis and reporting. TESSY takes additional care of the complete test organization as well as the test management, including requirements, coverage measurement, and traceability. The TESSY test project management feature provides the possibility to define an individual test project structure based on collections and folders, to define environment variables, and to configure your desired compiler/debugger with the help of the integrated Test Environment Editor. The coverage results are displayed directly within the project structure and the test results are stored within test runs which allows for keeping former (successful) results for reporting. -
41
UnitWise
API Swan
Our platform intelligently understands your code, seamlessly executing edge cases within your coding environment, ensuring the prompt delivery of impeccable software. Experience accelerated delivery of flawless software with UnitWise at your fingertips. Say goodbye to the tedious process of manually creating test cases and the reliance on prompts for generating test codes. As you delve into coding, UnitWise becomes your steadfast testing companion, providing real-time and pertinent test codes to streamline your development journey. Select the class to test and generate test cases within your IDE in a single click. View the failed test case behaviors and fix the test to eliminate errors. Identify code bugs, enhancing software reliability, while seamlessly correcting identified code issues. We prioritize data security, ensuring the steadfast integrity and exclusivity of your code are meticulously upheld.Starting Price: $65 per month -
42
HCL OneTest Embedded
HCL Software
Automating the creation and deployment of component test harnesses, test stubs and test drivers is a cinch thanks to OneTest Embedded. With a single click from any development environment, one can profile memory and performance, analyze code coverage and visualize program execution behavior. Additionally, OneTest Embedded helps be more proactive in debugging, while identifying and assisting in fixing code before it breaks. Allows for a virtual cycle of test generation, while executing, reviewing and testing improvement to rapidly achieve full test coverage. One click is all it takes to build, execute on the target, and generate reports. Helps preempt performance issues and program crashes. Additionally, can be adapted to work with custom memory management methods used in embedded software. Provides visibility on thread execution and switching to develop a deep understanding of the behavior of the system under test. -
43
froglogic Coco
froglogic
Coco® is a multi-language code coverage tool. Automatic source code instrumentation is used to measure test coverage of statements, branches and conditions. Executing a test suite against an instrumented application produces data that can later be analyzed. This analysis can be used to understand how much of the source code has been hit by tests, which additional tests need to be written, how the test coverage changed over time and more. Identify redundant tests, untested or dead code. Identify the impact of a patch on the code and code coverage & your testing. Coco supports statement coverage, branch coverage, MC/DC and other levels. Linux, Windows, RTOS and others. Using GCC, Visual Studio, embedded compilers and more. Choice of different report formats (text, HTML, XML, JUnit, Cobertura). Coco can also be integrated with various build, test and CI frameworks like JUnit, Jenkins and SonarQube.Starting Price: €124.17 per month -
44
CodeBeaver
CodeBeaver
CodeBeaver writes and updates your unit tests. Not only that! It highlights bugs in your Pull Requests by running tests and checking out your code. It works natively with GitHub, GitLab and Bitbucket. The onboarding takes 2 clicks! We currently help 30k GitHub stars and counting.Starting Price: $12/month -
45
EasyMock
EasyMock
Most parts of a software system do not work in isolation, but collaborate with other parts to get their job done. In a lot of cases, we do not care about using real collaborators implementation in unit testing, as we trust these collaborators. Mock objects replace collaborators of the unit under test. To test a unit in isolation or mount a sufficient environment, we have to simulate the collaborators in the test. A Mock Object is a test-oriented replacement for a collaborator. It is configured to simulate the object that it replaces in a simple way. In contrast to a stub, a Mock Object also verifies whether it is used as expected. EasyMock has been the first dynamic Mock Object generator, relieving users of hand-writing Mock Objects, or generating code for them. EasyMock provides Mock Objects by generating them on the fly using Java proxy mechanism. -
46
OpenClover
OpenClover
Balance your effort spent on writing applications and test code. Use the most sophisticated code coverage tool for Java and Groovy. OpenClover measures code coverage for Java and Groovy and collects over 20 code metrics. It not only shows you untested areas of your application but also combines coverage and metrics to find the riskiest code. The Test Optimization feature tracks which test cases are related to each class of your application code. Thanks to this OpenClover can run tests relevant to changes made in your application code, significantly reducing test execution time. Do testing getters and setters bring much value? Or machine-generated code? OpenClover outruns other tools in its flexibility to define the scope of coverage measurement. You can exclude packages, files, classes, methods, and even single statements. You can focus on testing important parts of your code. OpenClover not only records test results but also measures individual code coverage for every test.Starting Price: Free -
47
Confident AI
Confident AI
Confident AI offers an open-source package called DeepEval that enables engineers to evaluate or "unit test" their LLM applications' outputs. Confident AI is our commercial offering and it allows you to log and share evaluation results within your org, centralize your datasets used for evaluation, debug unsatisfactory evaluation results, and run evaluations in production throughout the lifetime of your LLM application. We offer 10+ default metrics for engineers to plug and use.Starting Price: $39/month -
48
Gru
Gru.ai
Gru.ai is an innovative AI-driven platform designed to enhance software development workflows by automating tasks like unit testing, bug fixing, and algorithm development. With tools like Test Gru, Bug Fix Gru, and Assistant Gru, Gru.ai helps developers streamline their processes and improve efficiency. Test Gru automates unit test generation, ensuring superior test coverage while reducing manual effort. Bug Fix Gru automatically identifies and resolves issues directly within your GitHub repositories. Assistant Gru is an AI developer that assists with technical challenges like debugging and coding, delivering reliable and high-quality solutions. Gru.ai is tailored for developers looking to optimize their coding processes and reduce repetitive tasks through the power of AI. -
49
BullseyeCoverage
Bullseye Testing Technology
BullseyeCoverage is an advanced C++ code coverage tool used to improve the quality of software in vital systems such as enterprise applications, industrial control, medical, automotive, communications, aerospace and defense. The function coverage metric gives you a quick overview of testing completeness and indicates areas with no coverage at all. Use this metric to broadly raise coverage across all areas of your project. Condition/decision coverage provides detail at the control structure level. Use this metric to attain high coverage in specific areas, for example during unit testing. C/D coverage provides better detail than statement coverage or branch coverage, and provides much better productivity than more complex coverage metrics.Starting Price: $900 one-time payment -
50
TestBench for IBM i
Original Software
Testing and test data management for IBM i, IBM iSeries, AS/400. Complex IBM i applications must be checked from top to bottom, right into the data, wherever it is. TestBench IBM i is a comprehensive, proven test data management, verification and unit testing solution that integrates with other solutions for total application quality. Stop copying the entire live database and hone in on the data you really need. Select or sample data with full referential integrity preserved. Simply decide which fields need to be protected and use a variety of obfuscation methods to protect your data. Track every insert, update and delete including intervening data states. Create rules so that data failures are flagged to you automatically. Avoid the painful save/restores and stop attempting to explain bad test results based on poor initial data. Comparing outputs is a well proven method to verify your test results but it can be laborious and prone to error. This unique solution can save hours.Starting Price: $1,200 per user per year