DevEd 038: Learning Testing & TDD
In this episode of the DevEd podcast, the panel discusses Testing and Test Driven Development. They start the conversation by talking about automated testing with the help of unit tests using various tools available. Luis explains the terms regression testing, refactoring, mocking, continuous integration and continuous delivery (CI/CD).
Everyone shares their experience with testing, mainly how and when they started learning automated testing and their journey with it so far. They then dive into the learning aspect of testing including some of the best ways to learn unit testing and give great tips and tools along the way. The next topic discussed is Test Driven Development - the definition, division of the development community into those support the methodology and those who do not, and more importantly, how effective it can be, it's benefits and drawbacks and the comparison between TDD and BDD (Behaviour Driven Development).
They also talk about mocking, how testing can improve the quality of applications, and visual testing. In the end, they each mention their most favourite and least favorite testing tools.
"The MaxCoders Guide to Finding Your Dream Developer Job" by Charles Max Wood is now available on Amazon. Get Your Copy Today!
- Uncle Bob - TDD
- The Magic Tricks of Testing by Sandi Metz
- Code Kata
- TDD Kata 1 - Roy Osherove
The DevEd podcast is produced by Thinkster.io and published by DevChat.TV.
What is regression and refactoring?
Regression is handling new changes that affect or break legacy code, refactoring is changing the way code is written without changing the functionality.
What are ways to learn unit-testing?
Learning by example, practicing using open source codes, studying existing tests from a large codebase, trying to increase code-coverage, writing simple math based tests and Code Katas.
What is TDD?
Writing tests before designing the implementation code, red-green-refactor approach - write a test and make it fail (red), write code to make it pass (green) and eventually refactor the code.
What is a mock?
Artificially created responses that can be used and controlled by tests.