--Originally published at Newbie Programmer
Testing is one of the most important parts in development, because we need to make sure we are doing right and to find errors we may have and how to solve them, and this gives to the code more stability, scalability, etc.
Testing Object-Oriented Systems
Unit Testing
In this part the classes are tested individually, this test that the attributes, methods, and interfaces have no errors and are implemented as designed.
Subsystem Testing
This is testing parts of the system, it involves testing the interaction with other subsystems and outside ones, this are used when a new version is released.
System testing
This is for testing the system entirely to know if every aspect is doing well, and its used when new features are released.
Object-Oriented Testing Techniques
Grey Box Testing
There are different test cases designed for texting object oriented that are called grey box, and some of this are: state model-based testing, use case-based testing, class diagram-based testing and sequence diagram-based testing, this test cases are based in the tools of object oriented discussed in UML.
Techniques for Subsystem Testing
Thread based testing: test each class that need a single use case.
Use based testing: Each level of hierarchy its tested, the test begins with the individual classes to small modules and finally the major subsystems.
Categories of System Testing
Alpha testing: It’s the product that is testing in the organization that develop the application.
Beta testing: A select group of operated customers.
Acceptance testing: This is by the customer before accepting the product.
OOAD – Testing & Quality Assurance