The interactions of components means the interactions between objects during the iteration, for example, when one object is passed to another object as a parameter, or when one object has a reference to another object as some part of its state. Interactions always involve unidirectional messaging. But some interactions involve bidirectional messaging between objects.
The main purpose of testing interactions is to make sure that there is a proper messaging with objects whose classes have already been tested in a stand-alone mode. Interaction testing can be performed with interacting objects embedded inside the application program, or through the objects interacting in the environment provided by a special debugging tool like a Tester class.
First of all, we will describe in detail what the interactions between objects are and how interactions are identified in a class interface.
Interaction of Objects
Interaction of objects is just a request of one object (the sender) sent to another object (the receiver) to execute one of the recipient’s operations and all kinds of processing done by the receiver in order to complete this request. By the way, in most object-oriented programming languages, this covers much of activity occurring in the program. These include messaging between the object and its components and between the object and other objects that it has relations with. We believe that these other objects are examples of classes that have already been tested separately to the extent necessary to complete the class’s implementation.
Partial Class Testing
Within an iterative, incremental approach, a class is naturally developed in phases. Though, only the functionality that meets the requirements of the increment is defined and / or implemented. So, the relations between classes are usually such that it is impossible to sequence the development of a particular class in such a way that all other classes with which it needs to interact are fully developed and tested. The lower level what means the more primitive the implementation, the more likely that the classes will be totally developed by the certain period of time and tested as a complete program unit. Consequently, other classes are developed and tested in increment mode.
If you want to know more about testing interactions or any other type of testing, please, contact experts of software testing consulting company. They will provide you with software testing-oriented advisory services in the field of testing methodology, strategy, and test and process competency assessment throughout the life cycle.