Introduction to Test and Behavior Driven Development
Successful developers need to not only build the right software but build it right. To know your software works correctly, you need to test each unit of code. One of the best methods for this unit-level testing is test driven development.
This course provides a detailed overview of test driven development (TDD). First, you’ll learn what automated testing is and why it is essential for building robust applications resilient to failure. You’ll explore the basics of testing, including test cases, testing levels, and the traditional release cycle.
You’ll learn about TDD and its complement, behavior driven development (BDD): TDD tests individual units of code while BDD tests how these units work together.
Then you’ll examine TDD in detail. You’ll explore TDD’s benefits, concepts, and popular tools, and you’ll hone your new testing skills through hands-on labs. You’ll create TDD test cases by writing test assertions and building test fixtures, and you’ll run these test cases by using the Nose testing package. You’ll then practice more advanced TDD methods such as increasing code coverage, generating and using fake data, and testing mock objects.
Status: Mockups
Mockups
Status: Test Tools
Test Tools
Intermediate·Course·21 hours
Featured reviews
5.0
·Reviewed Dec 21, 2025
The course offered by Coursera is Amazing. The Couch was good & the way he delivers & the way he teaches was good. But the review system is very slow. Which will let peers do the review.
5.0
·Reviewed Jun 19, 2023
This course was well planned and easy to follow. The demo lessons were very helpful with understanding how tests should be conducted. Great class, and great instructor.
5.0
·Reviewed Aug 4, 2024
Omg this course is great! Thanks a lot for all the effort you put into this, it's greatly appreciated, I learned a lot! :D
5.0
·Reviewed Aug 9, 2022
It's great and I get more Knowledge from this Course I wish for the advance Course
5.0
·Reviewed Jun 16, 2023
Best tutorial with clear explanation and much practice. Thanks
4.0
·Reviewed Jan 24, 2025
Really a great way to start with software testing
5.0
·Reviewed Jul 19, 2022
I Loved it. So easy to understand. even though I am not into codin, I can now understand why certain actions happen. This is a great course. Thank you
5.0
·Reviewed Apr 20, 2024
Very good. Try to complete the final project without copying the solution for a better understanding of what is a test-first approach.
4.0
·Reviewed Jul 29, 2022
Great content and extermely knowledgeable lecturer. Thank you !
4.0
·Reviewed Sep 7, 2022
Very good course, although I wish they focused more on TDD Workflow examples rather than Python specifically.
4.0
·Reviewed May 14, 2023
Lectures were good. The IDE did not have data or instructions for the labs in week 3.
5.0
·Reviewed Feb 17, 2023
Absolutely useful and relevant for directly applying to my current project at work.
All reviews
Showing: 20 of 67
All Learners
All Stars
Most Helpful
A
Abdullahi
5.0
·Reviewed Jun 23, 2022
I didn't know how important it is to test my code until after taking this course. The course is well structured, and well explained with hands-on practice which bolster understanding. I really enjoyed every minute of learning about tests and the different techniques for writing a good test.
N
Nzoji
5.0
·Reviewed Feb 18, 2023
Absolutely useful and relevant for directly applying to my current project at work.
M
Mariam
2.0
·Reviewed Jun 6, 2022
No Arabic Subtitle, Why???
please i want to learn it importantly and i need it in arabic.
D
David
5.0
·Reviewed May 8, 2022
This couse is very helpful to understanding "crafting" work of programming. It's not about the python language, but about how the developer can manage his/her attention and how to progressively change requirements into codes with confidence.
O
Ololade
5.0
·Reviewed Jul 20, 2022
I Loved it. So easy to understand. even though I am not into codin, I can now understand why certain actions happen. This is a great course. Thank you
R
Reinaldo
5.0
·Reviewed Aug 26, 2025
Excellent course! I learned a lot! Thanks to the entire team and, especially, to the instructor!!!!!
H
HAROUN
5.0
·Reviewed Aug 10, 2022
It's great and I get more Knowledge from this Course I wish for the advance Course
D
Devalla
5.0
·Reviewed Sep 14, 2022
Nice course and good eplanaion about TDD
T
Tom
5.0
·Reviewed Jul 14, 2022
Excellent course. Fantastic instructor!
P
Pham
5.0
·Reviewed Oct 2, 2022
Great, usefull
N
Nandyala
5.0
·Reviewed Sep 24, 2022
super
A
ALANAZi
5.0
·Reviewed Dec 9, 2022
***
I
Isaac
4.0
·Reviewed Sep 8, 2022
Very good course, although I wish they focused more on TDD Workflow examples rather than Python specifically.
G
Graham
4.0
·Reviewed Jul 30, 2022
Great content and extermely knowledgeable lecturer. Thank you !
S
Sakhamuri
4.0
·Reviewed Sep 9, 2022
nice
B
bruno
1.0
·Reviewed Jun 27, 2022
Hello, I'm not able to access modules 11, 12, and 13. I paid the complete course fee and after completing module 10, I found out that modules 11 and 12 are locked...
The course is about CI/CD. it's ridiculos
A
Andrey
5.0
·Reviewed Jul 7, 2023
I would say that I absolutely loved it! The course was packed full of useful concepts, all of which were explained in a clear and easy-to-follow manner. But what really set this course apart was the emphasis on practice. Through a series of engaging exercises, I was able to put my newly acquired knowledge into action, and really start to solidify my understanding of TDD. Overall, I would highly recommend this course to anyone interested in learning more about TDD. It's a fantastic way to get started, and I know that I'll be referring back to the concepts and techniques that I learned here for years to come.
R
Robert
5.0
·Reviewed Feb 20, 2023
Good balance of theory and practical labs, concepts were well explained with a good level of detail. The course has improved how I code and made my development more test-driven. I would recommend this course if you want to write more robust and higher quality code. The course seemed geared towards e-commerce/ commercial apps. I think an improvement would be to show how to write tests in additional domains i.e working with data other than account data. For example I would have liked to know how to mock/patch more complex classes.
A
ali
5.0
·Reviewed Feb 27, 2024
Really awesome. John Rofrano is a really great teacher and has a lot of practical experience. In this course, you will learn everything you need about Software Testing, both theory and practical materials, and you will be given all the questions that you may face. This course's lab is based on Python, but don't worry, he will teach you everything you need to understand and practice. I didn't know Python, but it was really easy, and I enjoyed this course and completed all the labs by myself
M
Maximilian
5.0
·Reviewed Aug 25, 2023
The course is well structured and easy to follow. The instructor is great and explains the concepts and details in an easy understandable way. The only downside that I see is that the "nose" package used in course is not actively maintained any more (and, as far as I know, does not work with recent Python versions). Nevertheless, this hardly impacts the overall experience. If you want to get a decent understanding on how to apply TTD, give this course a shot.