Alternatives to JUnit
Compare JUnit alternatives for your business or organization using the curated list below. SourceForge ranks the best alternatives to JUnit in 2024. Compare features, ratings, user reviews, pricing, and more from JUnit competitors and alternatives in order to make an informed decision for your business.
-
1
Sahi Pro
Tyto Software Pvt Ltd
Sahi Pro is a no-code test automation tool for web, desktop, mobile, and SAP applications. Sahi Pro empowers business testers and automation engineers to streamline their test automation processes. Sahi Pro reduces the time, effort, and complexity involved in test automation, making it an ideal choice for various domains including automobile, healthcare and BFSI. Features: 1. Non-flaky Test Execution - For reliable test results and reduced time wastage in analysis of false-positives or false-negatives. 2. Supports Multiple Technologies - Achieve end to end automation across technologies. 3. No-code Automation - Enable non-technical business testers to automate. 4. Integrations - Integrate and work with your existing ecosystem. Testers using Sahi Pro easily automate complex tests without writing code. With Sahi Pro, you can achieve faster release cycles, improved software quality, & reduced costs. Our customers love Sahi Pro for its speed, flexibility, and ease of use. -
2
aqua cloud
aqua cloud GmbH
aqua is an AI-powered advanced Test Management System designed to make the QA process painless. It is ideal for enterprises and SMBs across various sectors, although aqua was initially designed specifically for regulated industries like Fintech, MedTech and GovTech. aqua cloud helps to: - Organize custom testing processes and workflows, - Run testing scenarios of any complexity and scale, - Create extended sets of test data, - Ensure thorough insights with rich reporting capabilities and - Go from manual to automated testing smoothly. Additionally, it includes a unique feature called “Capture," which transforms the process of documenting and reproducing bugs into a 1-click action. aqua integrates with all the most popular issue trackers and automation tools like JIRA, Selenium, Jenkins and others. REST API is also available. aqua's streamlines testing and saves your QA team up to 70% of time, enabling you to deliver high-quality software and releases x2 faster! -
3
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. -
4
QUnit
QUnit
The powerful, easy-to-use JavaScript testing framework. Easy, zero-configuration setup for any Node.js project and minimal configuration for browser-based projects. Tests can be run anywhere; Node, your browser, even inside a web worker. Test your code where it runs. Flexible APIs for custom assertions, runners, and reporters mean you can extend QUnit to fit your needs. Getting started with QUnit for Node.js projects is quick and easy. First, install the QUnit package using npm. You can now run the test suite through the QUnit CLI. It is recommended that you run the QUnit command via an npm script, which will find the QUnit command automatically from your local dependencies. Check out the API documentation to learn more about the QUnit APIs for organizing tests and making assertions.QUnit follows the Node.js Long-term Support (LTS) schedule and provides support for current, active LTS, and maintenance LTS releases.Starting Price: Free -
5
Selenium
Software Freedom Conservancy
Selenium automates browsers. That's it! What you do with that power is entirely up to you. Primarily it is for automating web applications for testing purposes, but is certainly not limited to just that. Boring web-based administration tasks can (and should) also be automated as well. If you want to create robust, browser-based regression automation suites and tests, scale and distribute scripts across many environments, then you want to use Selenium WebDriver, a collection of language specific bindings to drive a browser - the way it is meant to be driven. If you want to create quick bug reproduction scripts, create scripts to aid in automation-aided exploratory testing, then you want to use Selenium IDE; a Chrome and Firefox add-on that will do simple record-and-playback of interactions with the browser. If you want to scale by distributing and running tests on several machines and manage multiple environments from a central point. -
6
Spock Framework
Spock
Spock is a testing and specification framework for Java and Groovy applications. What makes it stand out from the crowd is its beautiful and highly expressive specification language. Thanks to its JUnit runner, Spock is compatible with most IDEs, build tools, and continuous integration servers. Spock is inspired from JUnit, RSpec, jMock, Mockito, Groovy, Scala, Vulcans, and other fascinating life forms. Spock Web Console is a website that allows you to instantly view, edit, run, and even publish Spock specifications. It is the perfect place to toy around with Spock without making any commitments.Starting Price: Free -
7
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. -
8
Cucumber
SmartBear
Validate executable specifications against your code on any modern development stack. With over 40 million downloads, Cucumber Open is the world’s #1 automation tool for Behavior-Driven Development. Cucumber Open isn't just open source, it's an open platform that plays well with the tools you already use and love. Works with Java, JavaScript, Ruby, .NET and many other platforms. Store plain text specifications alongside your code in your own source control system. Describe how the system should behave in a way that everybody can understand. Automate with Selenium, API calls or direct function calls in the same process. Generate reports in HTML, JSON and other formats, or build your own reports. Integrate with CucumberStudio, JIRA or build your own plugins. Bridge the gap between business and development using BDD. Decrease rework with test automation. Get real-time insights with living documentation. Seamless integration with Git. -
9
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. -
10
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 -
11
Mockito
Mockito
Mockito is a mocking framework that tastes really good. It lets you write beautiful tests with a clean & simple API. Mockito doesn’t give you hangover because the tests are very readable and they produce clean verification errors. Read more about features & motivations. Top 10 Java library across all libraries, not only the testing tools. In late 2013 there was an analysis made of 30.000 GitHub projects. Although Mockito reached number 9 in the main report, mockito-core and mockito-all are the same tool and therefore the factual position of Mockito is number 4, surpassing famous tools like Guava or Spring. Treat this study as an indicator of a big impact that Mockito makes every day on unit tests written in Java.Starting Price: Free -
12
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 -
13
Cypress
Cypress.io
Fast, easy and reliable end-to-end testing for anything that runs in a browser. Cypress has been made specifically for developers and QA engineers, to help them get more done. Cypress benefits from our amazing open-source community - and our tools are evolving better and faster than if we worked on them alone. Cypress is based on a completely new architecture. No more Selenium. Lots more power. Cypress takes snapshots as your tests run. Simply hover over commands in the Command Log to see exactly what happened at each step. Stop guessing why your tests are failing. Debug directly from familiar tools like Chrome DevTools. Our readable errors and stack traces make debugging lightning fast. Cypress automatically reloads whenever you make changes to your tests. See commands execute in real-time in your app. Never add waits or sleeps to your tests. Cypress automatically waits for commands and assertions before moving on. No more async hell.Starting Price: Free -
14
WebDriverIO
WebDriverIO
WebdriverIO allows you to automate any application written with modern web frameworks such as React, Angular, Polymeror Vue.js as well as native mobile applications for Android and iOS. WebdriverIO not only runs automation based on the WebDriver protocol, it also leverages native browser APIs to enable integrations to popular developer tools such as Chrome DevTools orGoogle Lighthouse. With the plugin you have access to commands for validating if you app is a valid PWA application as well as to commands for capturing frontend performance metrics such as speedIndex and others. The WebdriverIO testrunner comes with a command line interface that provides a nice configuration utility that helps you to create your config file in less than a minute. It also gives an overview of all available 3rd party packages like framework adaptions, reporter and services and installs them for you! -
15
NUnit
.NET Foundation
NUnit is a unit-testing framework for all .Net languages. Initially ported from JUnit, the current production release, version 3, has been completely rewritten with many new features and support for a wide range of .NET platforms. The NUnit Project is a member of the .NET Foundation. The .NET Foundation will provide guidance and support to help ensure the future of the project. The success of NUnit has been made possible through the hard work of our many contributors and team members. The Core Team thanks everyone for the help and contributions that have made NUnit the success that it is. At last count, the various NUnit packages passed 126 million downloads on NuGet.org. We couldn't have done that without the dedication of the many volunteers that donate their time and knowledge to the project. NUnit is Open Source software and NUnit 3 is released under the MIT license. -
16
Citrus
Citrus
Framework for automated integration tests supporting a wide range of message protocols and data formats! In a typical test scenario the system under test is running on a test infrastructure while interacting with Citrus over various messaging transports. During the test Citrus is able to act on both sides as client and consumer exchanging real request/response messages over the wire. With each test step you can validate the exchanged messages with expected control data including message headers, attachments and body content (e.g. XML, Json, ...). The test provides a Java fluent API to specify the test logic and is fully automated. The repeatable test is nothing but a normal JUnit or TestNG test and can easily run as integration test in a CI/CD pipeline. Kamelets represent Camel-K route snippets that act as standardized event sources and sinks in an event driven architecture.Starting Price: Free -
17
Appium
The JS Foundation
Appium is an open source test automation framework for use with native, hybrid and mobile web apps. It drives iOS, Android, and Windows apps using the WebDriver protocol. Appium is built on the idea that testing native apps shouldn't require including an SDK or recompiling your app. And that you should be able to use your preferred test practices, frameworks, and tools. Appium is an open source project and has made design and tool decisions to encourage a vibrant contributing community. Appium aims to automate any mobile app from any language and any test framework, with full access to back-end APIs and DBs from test code. Write tests with your favorite dev tools using all the above programming languages, and probably more (with the Selenium WebDriver API and language-specific client libraries). -
18
TAST
SIPSA
TAST, Test Automation System Tool is a comprehensive cloud test automation framework that enables businesses to maximize their test automation across the complete testing process from an End User´s perspective. It is easy to use and its graphical interface defines the automated test cases across technological platforms. TAST automates: *Cross Browser testing *Mobile testing *Desktop applications testing *DDBB testing: Oracle, PostgreSQL, MySQL, Db2. *File testing: txt, pdf, word, excel, csv, xml. *Mainframe testing: AS400, Host *APIs testing *Interface testing. *Remote Server testing. Types of tests you can automate with TAST: *Integration *Functional *System: Regressive, stress, load, parallel *Acceptance *A/B. -
19
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 -
20
Playwright
Playwright
Playwright supports all modern rendering engines including Chromium, WebKit, and Firefox. Test on Windows, Linux, and macOS, locally or on CI, headless or headed. Playwright waits for elements to be actionable prior to performing actions. It also has a rich set of introspection events. The combination of the two eliminates the need for artificial timeouts - the primary cause of flaky tests. Playwright assertions are created specifically for the dynamic web. Checks are automatically retried until the necessary conditions are met. Configure test retry strategy, capture execution trace, videos, screenshots to eliminate flakes. Browsers run web content belonging to different origins in different processes. Playwright is aligned with the modern browsers architecture and runs tests out-of-process. This makes Playwright free of the typical in-process test runner limitations.Starting Price: Free -
21
pytest
pytest
pytest helps you write better programs. The pytest framework makes it easy to write small tests, yet scales to support complex functional testing for applications and libraries. Due to pytest’s detailed assertion introspection, only plain assert statements are used. Detailed info on failing assert statements. Auto-discovery of test modules and functions. Modular fixtures for managing small or parametrized long-lived test resources. Can run unittest (including trial) and nose test suites out of the box. Supports Python 3.6+ and PyPy 3. Rich plugin architecture, with over 315+ external plugins and thriving community. The maintainers of pytest and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use. -
22
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 -
23
MockK
MockK
Mocking is a technique to make testing code readable and maintainable. In three consequent articles, I would like to show the basics, features, and quirks of the MockK library. It is a new open-source library (github repository) focused on making mocking in Kotlin great. Injection first tries to match properties by name, then by class or superclass. Check the lookupType parameter for customization. Properties are injected even if private is applied. Constructors for injection are selected from the biggest number of arguments to lowest.Starting Price: Free -
24
JMockit
JMockit
The toolkit is provided as a set of artifacts deployed to the Maven Central repository. It requires Java 7 or newer for test execution; tests must use JUnit or TestNG. For instructions on how to add the library to a Java project, see Running tests with JMockit. In this tutorial we examine the APIs available in the library, with the help of example tests (using Java 8). The central API - a single annotation - provides support for the automatic instantiation and initialization of the objects to be tested. Then we have the mocking API (also known as the "Expectations" API), intended for tests which use mocked dependencies. Finally, there is a small faking API (aka the "Mockups" API), which can be used for the creation and application of fake implementations that avoid the full cost of external components.Starting Price: Free -
25
TestComplete
SmartBear
Ensure the quality of your application without sacrificing speed or agility with an easy-to-use, GUI test automation tool. Our AI-powered object recognition engine and script or scriptless flexibility is unmatched, letting you test every desktop, web, and mobile application with ease. TestComplete comes with an intelligent object repository and support for over 500 controls, so you can ensure your GUI tests are scalable, robust, and easy to maintain. More automated quality means more overall quality. Automate UI testing across a wide range of desktop applications, including .Net, Java, WPF and Windows 10. Create reusable tests for all web applications including modern JavaScript frameworks like React and Angular on 2050+ browser and platform configurations. Create and automate functional UI tests on physical or virtual iOS and Android devices. No need to jailbreak your phone.Starting Price: $4,836 -
26
Ranorex Studio
Ranorex
Empower everyone on the team to perform robust automated testing on desktop, web and mobile applications, regardless of their experience with functional test automation tools. Ranorex Studio is an all-in-one solution that includes tools for codeless automation as well as a full IDE. With our industry-leading object recognition and shareable object repository, Ranorex Studio makes it possible to automate GUI testing for even the most challenging interfaces, from legacy applications to the latest web and mobile technologies. Ranorex Studio supports cross-browser testing with built-in Selenium WebDriver integration. Perform effortless data-driven testing using CSV files, Excel spreadsheets or SQL database files as input. Ranorex Studio also supports keyword-driven testing: our tools for collaboration allow test automation engineers to build reusable code modules and share them with the team. Download our free 30-day trial for a risk-free start to test automation.Starting Price: $3,590 for single-user license -
27
OpenTest
OpenTest
OpenTest is a free and open source functional test automation framework for web applications, mobile apps and APIs, built for scalability and extensibility, with a focus on enabling the mainstream test automation practices. OpenTest is a feature-reach tool that requires little to no coding skills and can handle virtually any type of functional test automation project. Keywords are high-level building blocks which hide the complexity of the underlying technology and let you build concise, readable and maintainable tests. No coding skills required.Run multiple test sessions in parallel, limited only by the available hardware resources. When you've maxed out your local machine(s), spin up more test actors in the cloud(s). JavaScript code can be embedded organically anywhere within your keyword-driven test to cover complex test scenarios. Run a test multiple times, over a set of data records maintained in a separate data file.Starting Price: Free -
28
Robot Framework
Robot Framework
Robot Framework is a generic open-source automation framework. It can be used for test automation and robotic process automation (RPA). Robot Framework is supported by Robot Framework Foundation. Many industry-leading companies use the tool in their software development. Robot Framework is open and extensible. Robot Framework can be integrated with virtually any other tool to create powerful and flexible automation solutions. Robot Framework is free to use without licensing costs. Robot Framework has an easy syntax, utilizing human-readable keywords. Its capabilities can be extended by libraries implemented with Python, Java or many other programming languages. Robot Framework has a rich ecosystem around it, consisting of libraries and tools that are developed as separate projects.Starting Price: Free -
29
AgitarOne
Agitar Technologies
The AgitarOne product family helps you work safer, better, and smarter as you develop and maintain your Java applications. AgitarOne JUnit Generator creates thorough JUnit tests on your code. This helps you find regressions and makes it safer and easier to improve your code to reduce the cost to maintain it. AgitarOne Agitator helps developers understand the behavior of their code as they write it. This helps you prevent bugs and prevent code complexity that can become tomorrow's maintenance headache. The AgitarOne family is the best available way to create, use, and manage the unit tests that you need to be truly agile. Automated JUnit Generation, you can automate the generation of JUnit tests to create a "safety net" before you start working with existing code. You can automate the generation of JUnit tests to create a "safety net" before you start working with existing code. -
30
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. -
31
Nova AI
Nova AI
Nova AI automates many of the non-productive testing tasks that developers face during implementation. Our solutions work behind the scenes and complete these tasks without your developers having to use different interfaces or tools. Automatically generate and execute unit, integration, and end-to-end tests from a single platform. Both current and newly generated tests are executed, with results and insights surfaced. All your data is completely isolated and we never share it. We've enabled SSL-encrypted transit and industry-standard 256-bit AES encrypted at rest, and SOC 2 Type 2 is in progress. -
32
TestProject
TestProject
TestProject is the world’s first free cloud-based, community-powered test automation platform. TestProject makes it easier for testers to do their jobs quickly, and to collaborate using popular open source frameworks (e.g., Selenium and Appium) to ensure quality with speed. By fostering a collaborative community that can come together — as individuals and in teams — TestProject is shaping the future of software testing. Founded in 2015 in Israel, TestProject aims to create a powerful and collaborative environment for the entire test automation community, without any barriers, and completely for free. Learn more at https://testproject.io.Starting Price: $0 -
33
Embedded Tester
Xebrium
XEB360 is an embedded test automation framework designed for the stress testing of hardware & software algorithms. It is a generic automated testing multi-user framework comprising of hardware and software which allows the generation and monitoring of signals and patterns. The product encompasses distinguished software and hardware components that can help in creating, automatically executing, and evaluating various test cases. A very common challenge in the development and testing of embedded products is to create a real-world environment of signals and patterns to test the product in a repeatable and trackable way thoroughly. XEB360 addresses this problem by generating and monitoring signals and patterns supported by a sophisticated test harness that quantifies the quality assurance coverage. XEB360 offers a comprehensive set of historical data for all testing activities. It helps in the product engineering efforts of the teams by substantially focusing on quality processes. -
34
Gauge
ThoughtWorks
Gauge is a free and open source framework for writing and running acceptance tests. Gauge tests are in Markdown which makes writing and maintaining tests easier. Reuse specifications and robust refactoring to reduce duplication. Less code and readable specifications means less time spent on maintaining the test suite. Gauge works with multiple languages, CI/CD tools and automation drivers. You don't have to learn a new language or tool to get your test automation tool to work for you. Gauge has a robust plugin architecture and plugin ecosystem. You can easily extend Gauge to add support for IDEs, drivers, datasources, text execution events or your favorite programming language. Don’t waste time going through stacktraces. Gauge takes a screenshot on a test failure allowing you to get a visible picture of what went wrong. Reports are available across multiple formats (XML, JSON, HTML).Starting Price: Free -
35
LabVIEW
NI
LabVIEW offers a graphical programming approach that helps you visualize every aspect of your application, including hardware configuration, measurement data, and debugging. This visualization makes it simple to integrate measurement hardware from any vendor, represent complex logic on the diagram, develop data analysis algorithms, and design custom engineering user interfaces. With LabVIEW and NI DAQ hardware, you can build a custom measurement solution to visualize and analyze real-world signals to make data-driven decisions. Using LabVIEW and NI or third-party hardware, you can automate the validation of your product to meet challenging time-to-market and performance requirements. Working with LabVIEW, you can create flexible test applications that control multiple instruments and design user interfaces to optimize your manufacturing test throughput and operational cost. You can build industrial equipment and smart machines faster with LabVIEW.Starting Price: $453 per year -
36
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 -
37
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. -
38
TestCafe
DevExpress
No WebDriver required. No manual timeouts needed. Cross-browser testing out-of-the-box. TestCafe does not require WebDriver or other testing software. It runs on Node.js and uses the browsers you already have. TestCafe frees you from the need to insert manual timeouts and use cumbersome boilerplate expressions. You’ll spend less time tracking down annoying issues and more time doing what matters most. TestCafe is available for free and distributed under the MIT license. We are committed to our open-source community and are actively extending TestCafe's capabilities. TestCafe’s intuitive syntax makes teams more productive from day one. Don’t let Internet Explorer push you over the Edge. Run your tests in desktop browsers and headless browsers. Connect to remote testing servers, mobile devices and cloud browser farms. Run your tests in multiple browsers at once to save time and computing resources. -
39
Appsurify TestBrain
Appsurify
Appsurify’s patented AI technology determines the areas of an application that have changed after each developer commit and automatically selects and executes just the tests relevant to those changed areas in the CI Pipeline. Appsurify selects and executes only the small subset of tests impacted on a per developer change basis. Optimize CI Pipelines by removing automation testing as a bottleneck and let Builds run faster and more efficiently. Automation Testing and CI Pipelines are slowing productivity by taking too long to complete, delaying important feedback to catch bugs, and pushing release schedules back. With Appsurify, QA & DevOps work is streamlined by allowing focused test execution in only the areas that matter to catch bugs early and keep CI/CD pipelines running smoothly and efficiently. -
40
Visual Studio App Center
Microsoft
Continuously build, test, release, and monitor apps for every platform. Connect to GitHub, Bitbucket, GitLab, or Azure DevOps and build your app in the cloud on every commit. Automatically run unit tests, release to testers and stores, or test your UI on real devices. Commit to a feature branch to build and test. Commit to a beta branch to distribute to testers. Commit to master to submit to the App Store. Customize to fit your team’s workflow. Does your app still work after your latest change? How does it perform on an LG G2? Find out by testing your app in a hosted device lab with 1000s of real iOS and Android devices. You’ll receive test results, full-resolution screenshots of every step, along with performance metrics. Whether you prefer private distribution, public open betas, Microsoft Intune, TestFlight, Google Play, or the App Store, App Center makes releasing your app a delight.Starting Price: $40 per month -
41
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 -
42
MettleCI
Data Migrators
Reducing the time, cost, risk, uncertainty, and stress of DataStage delivery. Ensure all jobs comply with your coding standards, or use MettleCI's extensive library of best practices. Manage code in Git, directly from the DataStage Designer client, without any command line headaches. Promote your code from Development to Production using a fully-automated delivery pipeline. Give sequences the boot and allow MettleCI to build and run your job schedule automatically. Let MettleCI handle the heavy lifting of testing to ensure your builds are deployable without problems. No command lines, hacking, or complex config files. Test, build, and deploy using point-and-click. -
43
PHPUnit
PHPUnit
PHPUnit requires the dom and json extensions, which are normally enabled by default. PHPUnit also requires the pcre, reflection, and spl extensions. These standard extensions are enabled by default and cannot be disabled without patching PHP’s build system and/or C sources. The code coverage report feature requires the Xdebug (2.7.0 or later) and tokenizer extensions. Generating XML reports requires the xmlwriter extension. Unit Tests are primarily written as a good practice to help developers identify and fix bugs, to refactor code and to serve as documentation for a unit of software under test. To achieve these benefits, unit tests ideally should cover all the possible paths in a program. One unit test usually covers one specific path in one function or method. However a test method is not necessarily an encapsulated, independent entity. Often there are implicit dependencies between test methods, hidden in the implementation scenario of a test.Starting Price: Free -
44
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: - Isolated unit testing to avoid affecting the actual database - Writing unit tests in T-SQL without additional tools - Simple installation and uninstalling of the tSQLt framework for writing unit tests - Performing multiple unit tests simultaneously - Integrating unit tests into DevOps processes - Running unit tests via the command line - Access to the collection of unit test examples - Safe refactoring in large databases The tool features a Test List Manager, a separate tab within the SSMS interface for creating, editing, managing, and running unit tests. This integration allows teams to stay within SSMS, eliminating the need for learning and switching between different tools, thus supporting a more comfortable environment and efficient performance.Starting Price: $169.95 -
45
Deequ
Deequ
Deequ is a library built on top of Apache Spark for defining "unit tests for data", which measure data quality in large datasets. We are happy to receive feedback and contributions. Deequ depends on Java 8. Deequ version 2.x only runs with Spark 3.1, and vice versa. If you rely on a previous Spark version, please use a Deequ 1.x version (legacy version is maintained in legacy-spark-3.0 branch). We provide legacy releases compatible with Apache Spark versions 2.2.x to 3.0.x. The Spark 2.2.x and 2.3.x releases depend on Scala 2.11 and the Spark 2.4.x, 3.0.x, and 3.1.x releases depend on Scala 2.12. Deequ's purpose is to "unit-test" data to find errors early, before the data gets fed to consuming systems or machine learning algorithms. In the following, we will walk you through a toy example to showcase the most basic usage of our library. -
46
Serenity BDD
Serenity BDD
Serenity BDD helps you write cleaner and more maintainable automated acceptance and regression tests faster. Serenity also uses the test results to produce illustrated, narrative reports that document and describe what your application does and how it works. Serenity tells you not only what tests have been executed, but more importantly, what requirements have been tested. One key advantage of using Serenity BDD is that you do not have to invest time in building and maintaining your own automation framework. The aim of Serenity is to make it easy to quickly write well-structured, maintainable automated acceptance criteria, using your favourite BDD or conventional testing library. You can work with Behaviour-Driven-Development tools like Cucumber or JBehave, or simply use JUnit. You can integrate with requirements stored in an external source (such as JIRA or any other test cases management tool), or just use a simple directory-based approach to organise your requirements.Starting Price: Free -
47
REST Assured
REST Assured
Testing and validating REST services in Java is harder than in dynamic languages such as Ruby and Groovy. REST Assured brings the simplicity of using these languages into the Java domain.Starting Price: Free -
48
Selenide
Selenide
You don't need to think how to shut down browser, handle timeouts and StaleElement Exceptions or search for relevant log lines, debugging your tests. We are proud to claim that Selenide is so simple that you don't need to read tons of documentation. Selenium WebDriver is a great tool, but it’s not a tool for testing. It’s a tool for browser manipulation. There are several testing libraries around Selenium WebDriver. But it seems that they do not resolve the main problems of UI tests. Namely, instability of tests caused by dynamic content, JavaScript, Ajax, timeouts etc. Selenide was created to resolve these problems. First of all, Selenide makes your tests stable by resolving (almost) all Ajax/timing issues. We are proud to claim that Selenide is so simple that you don't need to read tons of documentation. The whole work with Selenide consists of three simple things!Starting Price: Free -
49
Karate
Karate
Karate is the only open-source tool to combine API test automation, mocks, performance-testing and even UI automation into a single, unified framework. The BDD syntax popularized by Cucumber is language-neutral and easy for even non-programmers. Assertions and HTML reports are built-in, and you can run tests in parallel for speed. There’s also a cross-platform stand-alone executable for teams not comfortable with Java. You don’t have to compile code. Just write tests in a simple, readable syntax - carefully designed for HTTP, JSON, GraphQL and XML. And you can mix API and UI test automation within the same test script. It is worth pointing out that JSON is a ‘first-class citizen’ of the syntax such that you can express payload and expected data without having to use double-quotes and without having to enclose JSON field names in quotes. There is no need to ‘escape’ characters like you would have had to in Java or other programming languages.Starting Price: Free -
50
Carina
Zebrunner
Describe all page objects on your own based on the most popular Page Objects pattern. Reuse Custom Type Page Factory to describe app specific pages (Web, IOS, Android, etc.). To make a cool test, you just need to add Verification Logic to your combined PageObjects. That is it. However, we do our best to support Data Driven Approach so you can get the data you need from whatever source available. If you want your test to be run for both IOS and Android platforms, just add some platform specifics, code will be reused by 80% avg. When it comes to test execution, here is the real variety of approaches you can use. You can run from either local or CI environments, include several platforms and get reports passed into multiple third party tools. The icing on the cake is that you can use any internal or external Selenium Hub Providers like Zebrunner Engine, SauceLabs, BrowserStack, TestingBot, etc. so multithreading will let you get the testing results rapidly.Starting Price: Free