Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

https://github.com/omergulen/awesome-tdd

A collection of awesome things regarding the test-driven development ecosystem. A curated list of courses, tutorials, libraries, tips and tricks, books, videos, and awesome resources about TDD.
https://github.com/omergulen/awesome-tdd

List: awesome-tdd

awesome awesome-list tdd test test-driven-development testing

Last synced: about 1 month ago
JSON representation

A collection of awesome things regarding the test-driven development ecosystem. A curated list of courses, tutorials, libraries, tips and tricks, books, videos, and awesome resources about TDD.

Lists

README

        

# **Awesome TDD** [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome)

A collection of awesome things regarding the test driven development ecosystem.
A curated list of courses, tutorials, libraries, tips and tricks, books, videos and awesome resources about TDD.

*Inspired by the [awesome](https://github.com/sindresorhus/awesome) list thing. You might also like [awesome-bdd](https://github.com/omergulen/awesome-bdd).*

*Please read the [contribution guidelines](#guidelines) before contributing.*

**Say *hi* on [Twitter](https://twitter.com/omergulenn).**

## Table of Contents
- [Angular.js](#angular-js)
- [Books](#books-angular-js)
- [Guides](#guides-angular-js)
- [Videos](#videos-angular-js)
- [C Sharp](#c-sharp)
- [Guides](#guides-c-sharp)
- [Videos](#videos-c-sharp)
- [Java](#java)
- [Books](#books-java)
- [JavaScript](#javascript)
- [Books](#books-javascript)
- [Guides](#guides-javascript)
- [Tools](#tools-javascript)
- [Node.js](#node-js)
- [Guides](#guides-node-js)
- [PHP](#php)
- [Guides](#guides-php)
- [Python](#python)
- [Books](#books-python)
- [Guides](#guides-python)
- [Videos](#videos-python)
- [React.js](#react-js)
- [Books](#books-react-js)
- [Guides](#guides-react-js)
- [React Native](#react-native)
- [Guides](#guides-react-native)
- [Ruby](#Ruby)
- [Books](#books-ruby)
- [Guides](#guides-ruby)
- [Videos](#videos-ruby)
- [Related Awesome Lists](#related-awesome-lists)

---

## Angular.js

### Books Angular.js
- [AngularJS Test Driven Development](http://www.amazon.com/AngularJS-Test-driven-Development-Tim-Chaplin/dp/1784398837) - by Tim Chaplin.
### Guides Angular.js
- [AngularJS for TDD](http://code.tutsplus.com/articles/new-course-angularjs-for-test-driven-development--cms-24345) - This course will familiarize you with all the testing frameworks you'll need: Mocha, Chai, Protractor, Karma and more by Andrew Blackman.
- [TDD Basics with AngularJS and Jasmine](http://www.slideshare.net/iquark/tdd-basics-with-angular-and-jasmine) - Basics of TDD with a small example using Angular.js and Jasmine by Luis Sánchez Castellanos.
- [TDD with AngularJS](http://ckknight.github.io/angularjs-tdd-presentation/#/) - by ckknight.
- [Obey the Testing Goat](http://davidsouther.com/tdd-angular/) - This is a todo app! There are many like it, but this one was written from nothing following as best I was able TDD design processes. Built entirely using Javascript technologies, it also provides a great practical example of how a variety of modern NodeJS tools work together to build a modern app by David Souther.
- [AngularJS TDD by Example](http://angularjs-tdd.tumblr.com/) - by michaeljcalkins.
- [Testing AngularJS from Scratch](https://www.pluralsight.com/courses/testing-angularjs-from-scratch) - In this course, you will learn how to create software using Behavior Driven Development, a test-first, agile approach to creating Angular programs using Jasmine by Jesse Liber.
- [Unit Testing in AngularJS: Services, Controllers & Providers](http://www.sitepoint.com/unit-testing-angularjs-services-controllers-providers/) - by Rabi Kiran.
- [Testing Angular with Karma](https://www.airpair.com/angularjs/posts/testing-angular-with-karma) - by Ben Drucker.
- [An Introduction To Unit Testing In AngularJS Applications](http://www.smashingmagazine.com/2014/10/07/introduction-to-unit-testing-in-angularjs/) - AngularJS has grown to become one of the most popular single-page application frameworks. Developed by a dedicated team at Google, the outcome is substantial and widely used in both community and industry projects. One of the reasons for AngularJS’ success is its outstanding ability to be tested. It’s strongly supported by Karma (the spectacular test runner written by Vojta Jína) and its multiple plugins. Karma, combined with its fellows Mocha, Chai and Sinon, offers a complete toolset to produce quality code that is easy to maintain, bug-free and well documented by Sébastien Fragnaud.
- [How To Unit Test An Angular App](http://www.alexrothenberg.com/2013/08/06/how-to-unit-test-an-angular-app.html) - Today we’re going to build a simple Tic-Tac-Toe game writing unit tests along the way by Alex Rothenberg.
- [Testing AngularJS directive templates with Jasmine and Karma](http://daginge.com/technology/2013/12/14/testing-angular-templates-with-jasmine-and-karma/) - by Dag-Inge.

### Videos Angular.js
- [AngularJS Testing Overview](https://egghead.io/lessons/angularjs-testing-overview) - Testing is a first class citizen in AngularJS. It is at its heart and soul. This lesson demonstrates using Karma to write a simple unit test for a Filter by John Lindquist.

## C Sharp

### Guides C Sharp
- [Get some hands-on practice with test-driven development in C#](https://www.freecodecamp.org/news/tdd-explanation-hands-on-practice-with-c-a0124338be44/) - by Moshe Binieli.
- [Walkthrough: Test-driven development using Test Explorer](https://docs.microsoft.com/en-us/visualstudio/test/quick-start-test-driven-development-with-test-explorer?view=vs-2019) - by Microsoft contributors.
- [Walkthrough: Create and run unit tests for managed code](https://docs.microsoft.com/en-us/visualstudio/test/walkthrough-creating-and-running-unit-tests-for-managed-code?view=vs-2019) - by Microsoft contributors.

### Videos C Sharp
- [TDD in C# From A to Z](https://www.udemy.com/course/tdd-csharp/) - by Engineer Spock.

## Java

### Books Java
- [JUnit in Action, Third Edition](https://www.manning.com/books/junit-in-action-third-edition) - by Cătălin Tudose.

## Javascript

### Books Javascript
- [Test Driven Javascript Development](https://www.packtpub.com/web-development/test-driven-javascript-development) - by Ravi Kumar Gupta, Hetal Prajapati, Harmeet Singh.
- [Testing JavaScript Applications](https://www.manning.com/books/testing-javascript-applications) - A book about JavaScript testing tools and techniques which includes an entire chapter dedicated to TDD by Lucas da Costa.

### Guides Javascript
- [Let's Code: Test Driven Javascript](http://www.letscodejavascript.com/) - James Shore presents a fascinating screencast on rigorous, professional JavaScript development.
- [Test Driven Javascript Development in Practice](http://code.tutsplus.com/tutorials/test-driven-javascript-development-in-practice--net-16246) - by Christian Johansen.
- [Learn TDD in Javascript](https://github.com/dwyl/learn-tdd) - ✅ A brief introduction to Test Driven Development (TDD) in JavaScript (Complete Beginner's Step-by-Step Tutorial) by dwyl.
- [TDD the RITE Way](https://medium.com/javascript-scene/tdd-the-rite-way-53c9b46f45e3) - by Eric Elliott.

### Tools Javascript
- [Mutation testing in JavaScript](https://github.com/stryker-mutator/stryker) - Mutation testing for JavaScript and friends.

## Node.js

### Guides Node.js
- [Unit testing and TDD in Nodejs - Part 1](https://www.codementor.io/nodejs/tutorial/unit-testing-nodejs-tdd-mocha-sinon) - by David Tang.
- [Unit Testing and TDD in Nodejs - Part 2](https://www.codementor.io/nodejs/tutorial/unit-testing-tdd-node-js-nockjs-part-2) - by David Tang.

## PHP

### Guides PHP
- [Test Driven Development Example by Daylerees](https://github.com/daylerees/test-driven-development-example) - An introduction to Test-Driven Development (TDD) by Dayle Rees.
- [The newbies guide to TDD](http://code.tutsplus.com/tutorials/the-newbies-guide-to-test-driven-development--net-13835) - Testing your code is annoying, but the impact of not doing so can be orders of magnitude more annoying! In this article, we'll use test-driven development to write and test our code more effectively by Nikko Bautista.
- [TDD in PHP: First Steps](http://code.tutsplus.com/tutorials/test-driven-development-in-php-first-steps--net-25796) - Trust me: it's not as tough as you think by Jeffrey Way.
- [Automatic Testing for TDD with PHP](http://code.tutsplus.com/tutorials/automatic-testing-for-tdd-with-php--net-26395) - Any tool that helps you obtain quicker feedback is a valuable asset by Patkos Csaba.
- [Lets TDD a simple app in PHP](http://code.tutsplus.com/tutorials/lets-tdd-a-simple-app-in-php--net-26186) - In this tutorial, I will present an end-to-end example of a simple application - made strictly with TDD in PHP. I will walk you through each step, one at a time, while explaining the decisions I made in order to get the task done. The example closely follows the rules of TDD: write tests, write code, refactor by Patkos Csaba.
- [Deciphering testing Jargon](http://code.tutsplus.com/tutorials/deciphering-testing-jargon--net-27513) - Lately, we've been hearing and reading more and more about test-driven development. This domain, however, comes with a series of expressions and specific jargon that can be confusing to newcomers. This article will walk you through the most common definitions, test types and test parts. Use cases will be provided, and, where possible, some code in PHP will also be presented by Patkos Csaba.
- [Basic TDD in your new PHP Package](http://www.sitepoint.com/basic-tdd-new-php-package/) - by Bruno Skvorc.
- [Test Driven Development with PHP](http://www.paulund.co.uk/test-driven-development-with-php) - by Paulund.
- [PHP Test-Driven Development Automated Tools to Improve Your PHP Code Quality](https://dzone.com/refcardz/phpunit-php-test-driven) - Shows you how to set up and automate your testing with ease and help you improve code quality by DZone.
- [TDD with Laravel and Doctrine](http://code.tutsplus.com/tutorials/test-driven-development-with-laravel-doctrine--cms-25563) - As a PHP developer, you may use the Test-Driven Development (TDD) technique to develop your software by writing tests. Typically, TDD will divide each task of the development into individual units. A test is then written to ensure that the unit behaves as expected by Alireza Rahmani Khalili.
- [Getting Started with BDD in Laravel ](https://semaphoreci.com/community/tutorials/getting-started-with-bdd-in-laravel) - by Bruno Skvorc.
- [Laravel, BDD and You, Let's get Started](http://code.tutsplus.com/tutorials/laravel-bdd-and-you-lets-get-started--cms-22155) - by Peter Suhm.

### Videos PHP
- [Test Driven Laravel From Scratch](http://adamwathan.me/2016/01/11/test-driven-laravel-from-scratch/) - by Adam Wathan.

## Python

### Books Python
- [TDD with Python](http://www.codekoala.com/posts/test-driven-development-with-python/) - by Josh VanderLinden.

### Guides Python
- [Beginning Test Driven Development in Python](http://code.tutsplus.com/tutorials/beginning-test-driven-development-in-python--net-30137) - by David Sale.
- [TDD in 5 minutes](https://dzone.com/articles/tdd-python-5-minutes) by Giorgio Sironi
.
- [TDD in python and pycharm](http://tzaffi.github.io/tdd/what_is_tdd/README.html) - by Zeph Grunschlag.
- [Unit testing and TDD](http://www.cis.upenn.edu/~matuszek/cit591-2012/Pages/unit-testing-in-python.html) - by David Matuszek.
- [Understanding TDD with Django](http://arunrocks.com/understanding-tdd-with-django/) - by Arun Ravindran.

## React.js

### Books React
- [Outside-In Frontend Development](https://outsidein.dev/) - A free online book walking through applying the outside-in style of TDD to React by Josh Justice.

### Guides React
- [React TDD guide](https://github.com/zpratt/react-tdd-guide) - A series of examples on how to TDD React by Zach Pratt.
- [A Comprehensive Guide to Test-First Development with Redux, React, and Immutable](http://teropa.info/blog/2015/09/10/full-stack-redux-tutorial.html) - by Tero Parviainen.
- [Learn TDD in React](https://learntdd.in/react/) - A short tutorial applying the outside-in style of TDD to React by Josh Justice.

## React Native

### Guides React Native
- [Learn TDD in React Native](https://learntdd.in/react-native/) - A short tutorial applying the outside-in style of TDD to React Native by Josh Justice.

## Ruby

### Books Ruby
- [Rails Testing Handbook](https://semaphoreci.com/ebooks/rails-testing-handbook) - by Semaphoreci.
- [Effective Testing with RSpec 3](https://pragprog.com/titles/rspec3/effective-testing-with-rspec-3/) - written with a TDD focus, including an outside-in TDD tutorial, by the RSpec maintainers.

### Guides Ruby
- [Rails girls - Test Driven Development](http://guides.railsgirls.com/test-driven-development) - by RailGirls.
- [Coding Conways game of Life in Ruby the TDD way with Rspec](http://www.rubyinside.com/screencast-coding-conways-game-of-life-in-ruby-the-tdd-way-with-rspec-5564.html) - by Peter Cooper.
- [Test Driven Rails - Part 1](https://karolgalanciak.com/blog/2014/01/04/test-driven-rails-part-1/) - Karol Galanciak.
- [Test Driven Rails - Part 2](https://karolgalanciak.com/blog/2014/03/03/test-driven-rails-part-2/) - Karol Galanciak.
- [Introducing TDD with Rails 3](http://www.sitepoint.com/introducing-test-driven-development-with-rails-3/) - by Darcy Laycock.
- [Let's Build: Instagram TDD with Rails Building an Instagram Clone](https://www.devwalks.com/lets-build-instagram-test-driven-with-ruby-on-rails-part-1/) - by Ben Walker.
- [Rails Testing for Zombies with TDD](https://www.pluralsight.com/courses/code-school-rails-for-zombies) - by Gregg Pollack.
- [15 TDD Steps to create a Rails Application](http://andrzejonsoftware.blogspot.com.ng/2007/05/15-tdd-steps-to-create-rails.html) - by Andrzej Krzywda.
- [Learn TDD with Ror](https://github.com/fsproru/tdd_with_ror) - by Alex Tamoykin.

### Videos Ruby
- [Introduction to test driven design](http://rubyoffrails.com/videos/18-introduction-to-test-driven-design-tdd) - by RubyOffRails.
- [Learn TDD with Ruby Koans](http://rubykoans.com/) - by RubyKoans.

## Related Awesome Lists

- [Awesome BDD](https://github.com/omergulen/awesome-bdd) - A collection of awesome things regarding the behavior-driven development ecosystem.
- [The Original](https://github.com/sindresorhus/awesome) - The awesome list of awesome lists.
- [Awesome Software Quality](https://github.com/ligurio/awesome-software-quality) - A list of free software testing and verification resources.
- [Awesome Testing](https://github.com/TheJambo/awesome-testing) - A curated list of testing software, extensions and resources.
- [Awesome TDD](https://github.com/unicodeveloper/awesome-tdd) - 📖 🚛 Curated list of awesome resources: books, videos, articles about using TDD(Test Driven Development).

---

## Contributing

Found an awesome blog, video, talk, tutorial etc that's not on this list?. Notify me or send a PR.

### Guidelines

* Please make an individual pull request for each suggestion
* Make sure what you are adding is not already on the list
* Use the following format: `* [Name](Link)`
* Add it to the bottom of the section, not top or middle
* Check your spelling and grammar
* Make sure there is no trailing whitespace
* If you are adding resources for a new language or framework, make sure it has a reference in the Table of Contents.
* Last, Make sure it is awesome!

## How can I thank you?

Why not star the github repo? I'd love the attention! Why not share the link for this repository on Twitter or HackerNews? Spread the word!

Don't forget to [follow me on twitter](https://twitter.com/omergulenn)!

Thanks!
[Omer Gulen](https://github.com/omergulen) & [Cemal Kilic](https://github.com/cemalkilic).