Open-source projects categorized as test-automation Edit details

Top 23 test-automation Open-Source Projects

  • Cypress

    Fast, easy and reliable testing for anything that runs in a browser.

    Project mention: Extreme Explorations of TypeScript's Type System | news.ycombinator.com | 2022-06-27
  • Mockito

    Most popular Mocking framework for unit tests written in Java

    Project mention: Mockito and non-debuggable testBuildTypes | reddit.com/r/androiddev | 2022-06-02

    For those using a "release" testBuildType for integration tests, what does your mocking setup look like? My app is stuck on Mockito 2.23.4, because higher (> 1.8.12) versions of Byte Buddy required beyond that point [do not play nicely with non-debuggable APKs](https://github.com/mockito/mockito/issues/2302). Solutions I've considered so far:

  • Appwrite

    Appwrite - The Open Source Firebase alternative introduces iOS support . Appwrite is an open source backend server that helps you build native iOS applications much faster with realtime APIs for authentication, databases, files storage, cloud functions and much more!

  • Detox

    Gray box end-to-end testing and automation framework for mobile apps

    Project mention: Detox : Gray box end-to-end test automation framework for react-native apps | dev.to | 2022-06-03

    Copy & paste the content of the equivalent file from the detox example app for RN, into it. Don't forget to change the package name to your project's package name.

  • TestCafe

    A Node.js tool to automate end-to-end web testing.

    Project mention: Why You Always Have To Close Your Article With A Call To Action AKA A Brief Introduction To Hashnode Widgets By Miki Szeles | dev.to | 2022-03-18

    Here it is: Contribute to the open-source Selenideium Element Inspector Chrome Extension, with which test automation teams can save hours daily by automatically generating all the relevant selectors for Selenide, Selenium, Cypress, Playwright, Squish and TestCafe.

  • Airtest

    UI Automation Framework for Games and Apps

    Project mention: Open Source iOS remote control app for macOS, Windows and Linux | reddit.com/r/iosgaming | 2021-12-30

    I have been using Airtest IDE https://github.com/AirtestProject/Airtest as device automation tool for Android and iOS for the last little while, basically it lets you write Python code which can do device automation with image recognition etc. It works pretty well on Android Emulators so I used to use it to setup macro farming where the built-in macro/function was lacking as it doesn't support image recognition. However on iOS devices it is extremely slow apparently due to how XCUITest was designed so it literally takes like a minute for any interactions to execute.

  • TestContainers

    Testcontainers is a Java library that supports JUnit tests, providing lightweight, throwaway instances of common databases, Selenium web browsers, or anything else that can run in a Docker container.

    Project mention: Testcontainers for Hashicorp Consul and Vault | dev.to | 2022-02-16

    The list goes on. Check out the full list of Testcontainer modules.

  • Karate

    Test Automation Made Simple

    Project mention: Framework for end to end testing of microservices | reddit.com/r/softwaretesting | 2022-07-03

    Take a look at Karate.

  • Scout APM

    Less time debugging, more time building. Scout APM allows you to find and fix performance issues with no hassle. Now with error monitoring and external services monitoring, Scout is a developer's best friend when it comes to application development.

  • REST Assured

    Java DSL for easy testing of REST services

    Project mention: How To Modify HTTP Request Headers In JAVA Using Selenium WebDriver? | dev.to | 2022-05-09

    The prerequisites to configure REST Assured with your project in any IDE (e.g., Eclipse) is fairly easy. After setting up Java, Eclipse, and TestNG, you would need to download the required REST Assured jar files.

  • awesome-test-automation

    A curated list of awesome test automation frameworks, tools, libraries, and software for different programming languages. Sponsored by http://sdclabs.com

    Project mention: Thursday Daily Thread: Python Careers, Courses, and Furthering Education! | reddit.com/r/Python | 2021-10-28

    I don't have personal experience, but I have this link bookmarked, might help you: https://github.com/atinfo/awesome-test-automation/blob/master/python-test-automation.md

  • wpt

    Test suites for Web platform specs — including WHATWG, W3C, and others

    Project mention: The 'Ahem' Font | news.ycombinator.com | 2022-06-08

    For writing portable, reliable tests for web browsers.

    > The web-platform-tests project is a cross-browser test suite for the Web-platform stack. Writing tests in a way that allows them to be run in all browsers gives browser projects confidence that they are shipping software which is compatible with other implementations, and that later implementations will be compatible with their implementations.


    > Tests should be as cross-platform as reasonably possible, working across different devices, screen resolutions, paper sizes, etc. ... Fonts cannot be relied on to be either installed or to have specific metrics. As such, in most cases when a known font is needed, Ahem should be used and loaded as a web font. In other cases, @font-face should be used.


  • WinAppDriver

    Windows Application Driver

    Project mention: Universal UI testing based on image and text recognition | dev.to | 2022-07-05

    I started looking for UI testing solutions for desktop applications. I quickly discarded expensive UI testing suites. WinAppDriver was very interesting, but one of the requirements was to add some kind of identifiers on every UI element that we wanted to interact with. This would have required a huge effort from the team.

  • SeleniumBase

    ✅ A powerful Python framework for browser automation and testing. 📊

    Project mention: Beautiful Soup: We called him Tortoise because he taught us | news.ycombinator.com | 2022-06-08

    In those cases you might want to check out SeleniumBase: https://seleniumbase.io/

  • Gauge

    Light weight cross-platform test automation

    Project mention: A dilemma: What to do about integration testing for developers. | reddit.com/r/softwaretesting | 2022-02-01

    Gauge looks interesting, but reminds me heavily of BDD frameworks - it looks like it's an abstraction layer where instead of writing Gherkin/GWT, the tests are in their specific DSL that's Markdown based?

  • entr

    Run arbitrary commands when files change

    Project mention: Is .NET open? MS pushing a proprietary extension to replace OmniSharp | news.ycombinator.com | 2022-06-16

    is `dotnet watch` basically `git ls-files|entr dotnet build` ?

    (entr is http://eradman.com/entrproject/ – like inotifywait but easier)

  • ltp

    Linux Test Project http://linux-test-project.github.io/

    Project mention: Uncle Bob and Silver Bullets | news.ycombinator.com | 2022-07-04
  • mountebank

    Over the wire test doubles

    Project mention: Eskimo is a supercharged mocking server for developers and testers, that aims to abstract the complexities of coding a mock server into simple JSON configurations. | reddit.com/r/node | 2022-01-01

    Supercharged? Sounds like a less-featured Mountebank.


    Record your test suite's HTTP interactions and replay them during future test runs for fast, deterministic, accurate tests.

  • nut.js

    Native UI testing / controlling with node

    Project mention: The unexpected return of JavaScript for Automation | news.ycombinator.com | 2021-11-26

    One really cool little JS library I've been using for a bunch of desktop automation tasks lately is nut.js and the lower level libnut library it's implemented on top of:



    It provides a means to send user input (mouse movement/clicks and key presses) and read and react to changes in visual state (through screenshots), and works across Windows, Linux and MacOS. It automates at a much lower level of abstraction than the approaches mentioned in the article that script against programmatic APIs.

    What I really like about this lower level approach is that you don't need to get anyone's permission to automate anything, since there's no programmatic API that the system owners has to provide for you and thus can limit or take away when it becomes inconvenient.

    Any task that can be accomplished though looking at stuff on the screen and clicking the mouse and pressing keys on a keyboard (i.e. what a real person would do to accomplish the same task) can be automated, and it's actually surprisingly easy and effective to do this with nut.js. What really helps is that OpenCV has become ridiculously good and ridiculously fast at matching/identifying objects from a screenshot, with latencies usually in the low double digits, so latency-based flakiness isn't nearly as much of an issue as I remember it in the old days. I've also played around with OCR with tesseract but haven't had as much success with it in terms of perf, and remember seeing latencies of several seconds for even recognizing a single word from a tiny pre-cropped screenshot containing only the word itself.

    The main tradeoff to this approach compared to automation through APIs is that because it works by simulating real user inputs, it's not very amenable to running in the background while a user is actively interacting with the same machine, so a separate machine or VM is often needed. That's an acceptable tradeoff for some use cases but complete deal breaker for others, so YMMV, but just wanted to bring this cool little tool to people's attention.

  • tavern

    A command-line tool and Python library and Pytest plugin for automated testing of RESTful APIs, with a simple, concise and flexible YAML-based syntax (by taverntesting)

    Project mention: Looking for fast (non-electron) alternative for Postman to test REST API in Windows | reddit.com/r/webdev | 2021-09-19

    At work we are really not fond of postman, at all. We like Tavern quite a lot https://github.com/taverntesting/tavern

  • keploy

    No code API testing platform. Create unit tests and data mocks from API calls.

    Project mention: Keploy | reddit.com/r/devopspro | 2022-06-29
  • green

    Green is a clean, colorful, fast python test runner.

  • skrape.it

    A Kotlin-based testing/scraping/parsing library providing the ability to analyze and extract data from HTML (server & client-side rendered). It places particular emphasis on ease of use and a high level of readability by providing an intuitive DSL. It aims to be a testing lib, but can also be used to scrape websites in a convenient fashion.

    Project mention: Skrape{It} | news.ycombinator.com | 2021-10-21
  • Atata

    C#/.NET test automation framework for web

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2022-07-05.

test-automation related posts


What are some of the best open-source test-automation projects? This list will help you:

Project Stars
1 Cypress 39,362
2 Mockito 13,062
3 Detox 9,645
4 TestCafe 9,343
5 Airtest 6,284
6 TestContainers 6,106
7 Karate 6,096
8 REST Assured 5,933
9 awesome-test-automation 5,138
10 wpt 3,914
11 WinAppDriver 2,817
12 SeleniumBase 2,813
13 Gauge 2,728
14 entr 2,305
15 ltp 1,797
16 mountebank 1,731
17 PHP VCR 1,036
18 nut.js 936
19 tavern 878
20 keploy 845
21 green 738
22 skrape.it 524
23 Atata 424
Find remote jobs at our new job board 99remotejobs.com. There are 2 new remote jobs listed recently.
Are you hiring? Post a new remote job listing for free.
Static code analysis for 29 languages.
Your projects are multi-language. So is SonarQube analysis. Find Bugs, Vulnerabilities, Security Hotspots, and Code Smells so you can release quality code every time. Get started analyzing your projects today for free.