Top 23 Tdd Open-Source Projects

  • GitHub repo mocha

    ☕️ simple, flexible, fun javascript test framework for node.js & the browser

    Project mention: Iniciar en el mundo del TESTING AUTOMATIZADO ✍ | dev.to | 2021-05-11
  • GitHub repo ava

    Node.js test runner that lets you develop with confidence 🚀

    Project mention: Deno v1.10 Released | news.ycombinator.com | 2021-05-12

    I know a fella working on a Deno port of Ava (https://github.com/avajs/ava). When that and Koa are ported or compatible, I'll be giving Deno a legitimate go.

  • GitHub repo jasmine

    Simple JavaScript testing framework for browsers and node.js

    Project mention: Jasmine Cheat Sheet | dev.to | 2021-05-11
  • GitHub repo learn-go-with-tests

    Learn Go with test-driven development

    Project mention: My journey to writing my blog in Go | dev.to | 2021-04-14

    Go through Learn Go With Tests to learn how to test the code correctly in Go.

  • GitHub repo Catch

    A modern, C++-native, header-only, test framework for unit-tests, TDD and BDD - using C++11, C++14, C++17 and later (or C++03 on the Catch1.x branch)

    Project mention: Presenting a C++ project on Github elegantly | reddit.com/r/cpp_questions | 2021-05-07
  • GitHub repo karma

    Spectacular Test Runner for JavaScript

  • GitHub repo Sinon.JS

    Test spies, stubs and mocks for JavaScript.

    Project mention: Custom Arguments with Jest | dev.to | 2021-04-29

    Jest is a powerful test runner, assertion library, and simple to use. Personally, It has replaced other configurations I've used like Mocha, Chai, Sinon for my Javascript testing. But one thing I really wished for, in Jest, is the ability to enable custom command line arguments. With custom arguments, I'm able to isolate testing configurations between npm scripts. Let's dive into what they are.

  • GitHub repo chai

    BDD / TDD assertion framework for node.js and the browser that can be paired with any testing framework.

    Project mention: Unit testing async functions | dev.to | 2021-03-30

    For this example, I am using Mocha, plus Chai for its BDD expect syntax and the chai-as-promised plugin for asynchronous matchers.

  • GitHub repo Entitas-CSharp

    Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity

    Project mention: Guides and tips for making a game engine in C# | reddit.com/r/gameenginedevs | 2021-04-08

    For examples I usually turn to GitHub. It has numerous C# game engines. However, I find it easier to figure out implementations myself and use other engines only for API inspiration. There are also several C# ECS such as Entitas and DefaultECS that you can use if you do not want to create you own.

  • GitHub repo goss

    Quick and Easy server testing/validation

    Project mention: Find The Cube | dev.to | 2020-11-24

    The repository is private but there is a CI/CD no-downtime deployment process. So fancy! I use goss to test the built image along with the docker/build-push-action. The end of my ci.yml GitHub Action workflow looks like this:

  • GitHub repo go-sqlmock

    Sql mock driver for golang to test database interactions

    Project mention: Go Package for better integration tests: github.com/ory/dockertest | dev.to | 2021-04-23

    We have different ways to write our tests depending on what datastore we are using, for example if we are testing database calls that happen to be using database/sql then importing a package like github.com/DATA-DOG/go-sqlmock could work.

  • GitHub repo doctest

    The fastest feature-rich C++11/14/17/20 single-header testing framework

    Project mention: Python 3 Types in the Wild: A Tale of Two Type Systems [pdf] | news.ycombinator.com | 2021-04-14

    Even aside from deliberate backwards-compatibility breaks in the standard, compilers sometimes break compatibility. Both MSVC and GCC 11 have changed their header file transitive includes within the past few years, causing projects (like doctest and Qt5) to stop compiling because they forgot to include headers, which built fine in the past but not anymore. IDK if it's "very common", but it's definitely happening in the wild.

    MSVC: https://github.com/onqtam/doctest/issues/183

    GCC:

    - https://invent.kde.org/qt/qt/qtbase/-/commit/8252ef5fc6d0430...

    - https://invent.kde.org/qt/qt/qtbase/-/commit/cb2da673f53815a...

  • GitHub repo Pester

    Pester is the ubiquitous test and mock framework for PowerShell.

    Project mention: Pester 5.2.0 is released! | reddit.com/r/PowerShell | 2021-05-06

    A lot more info here in the release notes: Release 5.2.0 · pester/Pester (github.com)

  • GitHub repo inspec

    InSpec: Auditing and Testing Framework

    Project mention: Terraforming in 2021 – new features, testing and compliance | dev.to | 2021-05-02

    Before we dive into own cloud provider compliance checking services, we want to highlight yet another open source tool, namely InSpec. It allows you to write tests in ruby, and was built on top of RSpec. If you know already awsspec, then this should feel very similar, with the advantage that InSpec also supports GCP and Azure.

  • GitHub repo Fluent Assertions

    Fluent API for asserting the results of unit tests that targets .NET Framework 4.5, 4.7, .NET Standard 1.3, 1.6 and 2.0. Supports the unit test frameworks MSTest, MSTest2, Gallio, NUnit, XUnit, MBunit, MSpec, and NSpec.

    Project mention: Cell CMS - Criando testes de maneira prática | dev.to | 2021-01-31

    fluentassertions / fluentassertions

  • GitHub repo fast-check

    Property based testing framework for JavaScript (like QuickCheck) written in TypeScript

    Project mention: Property based testing | reddit.com/r/ExperiencedDevs | 2021-04-29
  • GitHub repo spek

    A specification framework for Kotlin

  • GitHub repo vim-test

    Run your tests at the speed of thought

    Project mention: How would I accomplish this? | reddit.com/r/vim | 2021-04-10
  • GitHub repo NUnit

    NUnit 3 Framework

    Project mention: Automated Test in C#? | reddit.com/r/csharp | 2021-04-23

    Sure, there are the Microsofts own MSTest, then NUnit and XUnit and others. For Mocking you can use Moq and surely others I'm not familiar with.

  • GitHub repo httpretty

    HTTP client mocking tool for Python - inspired by Fakeweb for Ruby (by gabrielfalcao)

  • GitHub repo http4k

    The Functional toolkit for Kotlin HTTP applications. http4k provides a simple and uniform way to serve, consume, and test HTTP services.

  • GitHub repo jest-extended

    Additional Jest matchers 🃏💪

    Project mention: The frontend tooling guide to improve Developer Experience | dev.to | 2021-02-22

    Jest-Extended: Additional Jest matchers

  • GitHub repo study-path

    An organized learning path about Clean Code, Test-Driven Development, Legacy Code, Refactoring, Domain-Driven Design and Microservice Architecture

    Project mention: Learning SOLID and Interfaces | reddit.com/r/golang | 2021-03-03

    Look here https://github.com/joebew42/study-path#session-1-solid-and-clean-code , read the first part until the Racing Car Kata exercise. And once you are there I would invite you to try doing the kata: https://github.com/emilybache/Racing-Car-Katas

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 2021-05-12.

Index

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

Project Stars
1 mocha 20,476
2 ava 18,986
3 jasmine 15,109
4 learn-go-with-tests 14,190
5 Catch 13,396
6 karma 11,498
7 Sinon.JS 8,537
8 chai 7,238
9 Entitas-CSharp 5,006
10 goss 4,332
11 go-sqlmock 3,480
12 doctest 3,245
13 Pester 2,492
14 inspec 2,317
15 Fluent Assertions 2,159
16 fast-check 2,128
17 spek 2,097
18 vim-test 2,060
19 NUnit 2,029
20 httpretty 1,870
21 http4k 1,696
22 jest-extended 1,477
23 study-path 1,414