└── README.md /README.md: -------------------------------------------------------------------------------- 1 | 2 | # Awesome-tdd [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome) ![](https://img.shields.io/badge/unicodeveloper-approved-brightgreen.svg) 3 | Curated list of resources: books, videos, articles about using TDD( Test Driven Development ) 4 | 5 | > A curated list of courses, tutorials, libraries, tips and tricks, books, videos and awesome resources about TDD 6 | 7 | *Inspired by the [awesome](https://github.com/sindresorhus/awesome) list thing. You might also like [awesome-lumen](https://github.com/unicodeveloper/awesome-lumen).* 8 | 9 | *Please read the [contribution guidelines](#guidelines) before contributing.* 10 | 11 | **Check out my [blog](https://goodheads.io) or say *hi* on [Twitter](https://twitter.com/unicodeveloper).** 12 | 13 | ## Table of Contents 14 | 15 | - [TDD in Python](#tdd-in-python) 16 | - [Django](#django) 17 | - [TDD in PHP](#tdd-in-php) 18 | - [Laravel](#laravel) 19 | - [TDD in Javascript](#tdd-in-javascript) 20 | - [Nodejs](#nodejs) 21 | - [Angularjs](#angularjs) 22 | - [Reactjs](#reactjs) 23 | - [TDD in Ruby](#tdd-in-ruby) 24 | - [Rails](#rails) 25 | - [TDD in Java](#tdd-in-java) 26 | - [JUnit](#junit) 27 | - [TDD in C#](#tdd-in-C#) 28 | 29 | ## TDD IN PYTHON 30 | 31 | * [Beginning Test Driven Development in Python](http://code.tutsplus.com/tutorials/beginning-test-driven-development-in-python--net-30137) 32 | * [TDD in 5 minutes](https://dzone.com/articles/tdd-python-5-minutes) 33 | * [TDD in python and pycharm](http://tzaffi.github.io/tdd/example_tdd_in_pycharm/README.html) 34 | * [Unit testing and TDD](http://www.cis.upenn.edu/~matuszek/cit591-2012/Pages/unit-testing-in-python.html) 35 | * [TDD with Python](http://www.codekoala.com/posts/test-driven-development-with-python/) 36 | * [TDD with Python - The Book Online](http://chimera.labs.oreilly.com/books/1234000000754/index.html) 37 | * [Example of TDD in Python](http://www.sasanalysis.com/2014/09/one-example-of-test-driven-development.html) 38 | 39 | 40 | ### Django 41 | * [Test-Driven Django Tutorial](http://www.tdd-django-tutorial.com/) 42 | * [Understanding TDD with Django](http://arunrocks.com/understanding-tdd-with-django/) 43 | 44 | ## TDD IN PHP 45 | * [Test Driven Development Example by Daylerees](https://github.com/daylerees/test-driven-development-example) 46 | * [The newbies guide to TDD](http://code.tutsplus.com/tutorials/the-newbies-guide-to-test-driven-development--net-13835) 47 | * [TDD in PHP: First Steps](http://code.tutsplus.com/tutorials/test-driven-development-in-php-first-steps--net-25796) 48 | * [Automatic Testing for TDD with PHP](http://code.tutsplus.com/tutorials/automatic-testing-for-tdd-with-php--net-26395) 49 | * [Lets TDD a simple app in PHP](http://code.tutsplus.com/tutorials/lets-tdd-a-simple-app-in-php--net-26186) 50 | * [Deciphering testing Jargon](http://code.tutsplus.com/tutorials/deciphering-testing-jargon--net-27513) 51 | * [Basic TDD in your new PHP Package](http://www.sitepoint.com/basic-tdd-new-php-package/) 52 | * [Test Driven Development with PHP](http://www.paulund.co.uk/test-driven-development-with-php) 53 | * [PHP Test-Driven Development Automated Tools to Improve Your PHP Code Quality](https://dzone.com/refcardz/phpunit-php-test-driven) 54 | 55 | 56 | ### Laravel 57 | * [Test Driven Laravel From Scratch](http://adamwathan.me/2016/01/11/test-driven-laravel-from-scratch/) 58 | * [TDD by Example](https://laracasts.com/lessons/tdd-by-example) 59 | * [TDD with Laravel and Doctrine](http://code.tutsplus.com/tutorials/test-driven-development-with-laravel-doctrine--cms-25563) 60 | * [Getting Started with BDD in Laravel ](https://semaphoreci.com/community/tutorials/getting-started-with-bdd-in-laravel) 61 | * [Laravel 5 Coding - TDD](http://laravelcoding.com/blog/laravel-5-beauty-testing) 62 | * [Laravel, BDD and You, Let's get Started](http://code.tutsplus.com/tutorials/laravel-bdd-and-you-lets-get-started--cms-22155) 63 | 64 | ## TDD IN JAVASCRIPT 65 | * [Let's Code: Test Driven Javascript](http://www.letscodejavascript.com/) 66 | * [Test Driven Javascript Development in Practice](http://code.tutsplus.com/tutorials/test-driven-javascript-development-in-practice--net-16246) 67 | * [Getting Started with JS & TDD](https://open.bekk.no/getting-started-with-js-and-tdd) 68 | * [TDD by Example](http://thejackalofjavascript.com/test-driven-development-by-example/) 69 | * [Learn TDD in Javascript](https://github.com/dwyl/learn-tdd) 70 | * [Test Driven Javascript Development](https://www.packtpub.com/web-development/test-driven-javascript-development) 71 | * [Mutation testing in JavaScript](https://github.com/stryker-mutator/stryker) 72 | * [TDD the RITE Way](https://medium.com/javascript-scene/tdd-the-rite-way-53c9b46f45e3) 73 | * [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. 74 | 75 | 76 | ### NodeJS 77 | * [TDD in Nodejs](http://www.lynda.com/Node-js-tutorials/Test-Driven-Development-Node-js/383527-2.html) 78 | * [Unit testing and TDD in Nodejs - Part 1](https://www.codementor.io/nodejs/tutorial/unit-testing-nodejs-tdd-mocha-sinon) 79 | * [Unit Testing and TDD in Nodejs - Part 2](https://www.codementor.io/nodejs/tutorial/unit-testing-tdd-node-js-nockjs-part-2) 80 | 81 | 82 | ### AngularJS 83 | * [AngularJS & TDD Unit Testing - Part 1](https://www.youtube.com/watch?v=e_b1Vv0nNRI) 84 | * [AngularJS & TDD Unit Testing - Part 2](https://www.youtube.com/watch?v=Tpdm_7FWeEU) 85 | * [AngularJS & TDD Unit Testing - Part 3](https://www.youtube.com/watch?v=cZ5u1SReSeg) 86 | * [AngularJS & TDD Unit Testing - Part 4](https://www.youtube.com/watch?v=NN9uFB72Kqw) 87 | * [AngularJS & TDD Unit Testing - Part 5](https://www.youtube.com/watch?v=fq8YJd3GNVE) 88 | * [AngularJS for TDD](http://code.tutsplus.com/articles/new-course-angularjs-for-test-driven-development--cms-24345) 89 | * [AngularJS Test Driven Development](http://www.amazon.com/AngularJS-Test-driven-Development-Tim-Chaplin/dp/1784398837) 90 | * [TDD Basics with AngularJS and Jasmine](http://www.slideshare.net/iquark/tdd-basics-with-angular-and-jasmine) 91 | * [TDD with AngularJS](http://ckknight.github.io/angularjs-tdd-presentation/#/) 92 | * [Obey the Testing Goat](http://davidsouther.com/tdd-angular/) 93 | * [TDD with AngularJS](http://tech.transferwise.com/angularjs-tdd/) 94 | * [AngularJS TDD by Example](http://angularjs-tdd.tumblr.com/) 95 | * [Testing AngularJS from Scratch](https://www.pluralsight.com/courses/testing-angularjs-from-scratch) 96 | * [AngularJS TDD - Part 1](https://www.youtube.com/watch?v=7LMiBWYfQFM) 97 | * [AngularJS TDD - Part 2](https://www.youtube.com/watch?v=AF5HbM0yR4E) 98 | * [AngularJS TDD - Part 3](https://www.youtube.com/watch?v=3_BMrawysoY) 99 | * [AngularJS TDD - Part 4](https://www.youtube.com/watch?v=6kXtN25pxWk) 100 | * [AngularJS TDD - Part 5](https://www.youtube.com/watch?v=Zpf414EIEP0) 101 | * [Unit Testing in AngularJS: Services, Controllers & Providers](http://www.sitepoint.com/unit-testing-angularjs-services-controllers-providers/) 102 | * [AngularJS Unit Testing](https://quickleft.com/blog/angularjs-unit-testing-for-real-though/) 103 | * [Testing Angular with Karma](https://www.airpair.com/angularjs/posts/testing-angular-with-karma) 104 | * [An Introduction To Unit Testing In AngularJS Applications](http://www.smashingmagazine.com/2014/10/07/introduction-to-unit-testing-in-angularjs/) 105 | * [AngularJS End to End Testing With Protractor - Easy Set Up With Yeoman, Grunt, Bower](http://www.codeorbits.com/blog/2014/01/26/angularjs-end-to-end-testing-with-protractor-easy-set-up-with-yeoman/) 106 | * [Continuous Integration for AngularJS Applications with Jenkins](http://www.cardinalsolutions.com/cardinal/blog/custom-application-development/2014/07/continuous_integrati.html) 107 | * [Getting started unit-testing Angular](http://www.ng-newsletter.com/advent2013/#!/day/19) 108 | * [How To Unit Test An Angular App](http://www.alexrothenberg.com/2013/08/06/how-to-unit-test-an-angular-app.html) 109 | * [Testing AngularJS directive templates with Jasmine and Karma](http://daginge.com/technology/2013/12/14/testing-angular-templates-with-jasmine-and-karma/) 110 | * [Testing AngularJS Apps Using Karma](https://www.airpair.com/angularjs/posts/testing-angular-with-karma) 111 | * [Unit Testing an AngularJS Directive](http://blog.revolunet.com/blog/2013/12/05/unit-testing-angularjs-directive/) 112 | * [Unit Testing w/ AngularJS](http://moduscreate.com/unit-testing-w-angularjs/) 113 | * [Unit Testing - Directives](http://www.benlesh.com/2013/06/angular-js-unit-testing-directives.html) 114 | * [Unit Testing - Services](http://www.benlesh.com/2013/06/angular-js-unit-testing-services.html) 115 | * [Unit Testing - Controllers](http://www.benlesh.com/2013/05/angularjs-unit-testing-controllers.html) 116 | * [AngularJS Testing Overview](https://egghead.io/lessons/angularjs-testing-overview) 117 | * [AngularJS Protractor Tutorial 01 Framework Setup](https://www.youtube.com/watch?v=57134cHJlAs) 118 | * [AngularJS Protractor Tutorial 02 Configuration and Basic Test](https://www.youtube.com/watch?v=VAWKEHstjx8) 119 | * [AngularJS Protractor Tutorial 03 Using Locators](https://www.youtube.com/watch?v=Obi0y0AEFZg) 120 | * [AngularJS Protractor Tutorial 04 Using Expects](https://www.youtube.com/watch?v=U2awkXd27So) 121 | * [AngularJS Protractor Tutorial 5 Before and After](https://www.youtube.com/watch?v=9rBf8gtY81U) 122 | * [AngularJS Protractor Tutorial 06 Writing CSS Expressions](https://www.youtube.com/watch?v=sHyp7vk7DeE) 123 | * [AngularJS Protractor Tutorial 07 Using Page Object Pattern](https://www.youtube.com/watch?v=ln_jaC11SAA) 124 | 125 | 126 | ### ReactJS 127 | * [TDD in ES6 & React Webcast](https://ericelliottjs.com/product/tdd-es6-react/) 128 | * [React TDD guide](https://github.com/zpratt/react-tdd-guide) 129 | * [A Comprehensive Guide to Test-First Development with Redux, React, and Immutable](http://teropa.info/blog/2015/09/10/full-stack-redux-tutorial.html) 130 | 131 | ## TDD IN RUBY 132 | * [Introduction to test driven design](http://rubyoffrails.com/videos/18-introduction-to-test-driven-design-tdd) 133 | * [Rails girls - Test Driven Development](http://guides.railsgirls.com/test-driven-development) 134 | * [Learn TDD with Ruby Koans](http://rubykoans.com/) 135 | * [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) 136 | 137 | 138 | ### Rails 139 | * [Rails Testing Handbook](https://semaphoreci.com/ebooks/rails-testing-handbook) 140 | * [Test Driven Rails - Part 1](https://karolgalanciak.com/blog/2014/01/04/test-driven-rails-part-1/) 141 | * [Test Driven Rails - Part 2](https://karolgalanciak.com/blog/2014/03/03/test-driven-rails-part-2/) 142 | * [Introducing TDD with Rails 3](http://www.sitepoint.com/introducing-test-driven-development-with-rails-3/) 143 | * [Rails Testing for Zombies with TDD](https://www.codeschool.com/courses/rails-testing-for-zombies) 144 | * [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/) 145 | * [15 TDD Steps to create a Rails Application](http://andrzejonsoftware.blogspot.com.ng/2007/05/15-tdd-steps-to-create-rails.html) 146 | * [Learn TDD with Ror](https://github.com/fsproru/tdd_with_ror) 147 | 148 | 149 | ## TDD IN JAVA 150 | 151 | ### JUnit 152 | * [JUnit in Action, Third Edition](https://www.manning.com/books/junit-in-action-third-edition) 153 | 154 | ======= 155 | ## TDD IN C# 156 | 157 | * [Get some hands-on practice with test-driven development in C#](https://www.freecodecamp.org/news/tdd-explanation-hands-on-practice-with-c-a0124338be44/) 158 | * [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) 159 | * [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) 160 | * [TDD in C# From A to Z](https://www.udemy.com/course/tdd-csharp/) 161 | 162 | ## Contributing 163 | 164 | Found an awesome blog, video, talk, tutorial etc that's not on this list?. Notify me or send a PR. 165 | 166 | ### Guidelines 167 | 168 | * Please make an individual pull request for each suggestion 169 | * Make sure what you are adding is not already on the list 170 | * Use the following format: `* [Name](Link)` 171 | * Add it to the bottom of the section, not top or middle 172 | * Check your spelling and grammar 173 | * Make sure there is no trailing whitespace 174 | * If you are adding resources for a new language or framework, make sure it has a reference in the Table of Contents. 175 | * Last, Make sure it is awesome! 176 | 177 | 178 | ## How can I thank you? 179 | 180 | 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! 181 | 182 | Don't forget to [follow me on twitter](https://twitter.com/unicodeveloper)! 183 | 184 | Thanks! 185 | Prosper Otemuyiwa. 186 | 187 | ## License 188 | 189 | [![CC0](http://mirrors.creativecommons.org/presskit/buttons/88x31/svg/cc-zero.svg)](https://creativecommons.org/publicdomain/zero/1.0/) 190 | 191 | To the extent possible under law, [Prosper Otemuyiwa](http://twitter.com/unicodeveloper) has waived all copyright and related or neighboring rights to this work. 192 | --------------------------------------------------------------------------------