Whenever we have a problem in our life it’s said that we can solve that problem with over 50 different options and still solve it.
This applies for testing code, the paradigms change how we approach and do the overhaul of the software.
Through the course and the blog posts we have discussed that anything that involves OO needs a different approach but why?
In anything that involves OO = Object that is and must be dealing with another object, think about it as a chain. Checking the output of a OO code is easy, you need to verify that everything is connected and the arguments are fulfilled otherwise it won’t work; nevertheless, when you check an object and a modify version is replaced the chain it created bust be checked as well.
In any case, if the chain of objects is not checked problems will arise and give trouble. As mentioned before the use of Object-Oriented has been the main “discussion” therefore using the concepts and key components is a must.
In this case, inheritance which is arguably one of the key components of good OO programming is in charge of ensuring that the parent object is well implemented and doing all of its functions. In case it is not well implemented the child class cannot inherit enough attributes and any methods that were implemented on the super class, therefore it won’t work properly.