Testing is an important part of the software development life cycle, however, we don't always stress the importance of it. There are dozens of different types of testing and each one has its own purpose. In order to clarify/revisit two of the more common testing types used by developers, here are some concept definitions and best practices around them.
\n\nThis talk focuses on unit testing and integration testing, mainly narrow integration testing as Fowler point out in his article https://martinfowler.com/bliki/IntegrationTest.html
\n\nLink to the talk: https://www.youtube.com/watch?v=n6Xgfag-ylc