Skip to content
Related Articles

Related Articles

Software Engineering – Agent-Oriented Testing

Improve Article
Save Article
  • Last Updated : 02 Aug, 2022
Improve Article
Save Article

Testing determines the correctness of the software under a predefined script. It identifies any gaps, errors, or missing requirements contrary to actual requirements. The purpose of testing is to detect failures of the application so that failures can be discovered and corrected. Testing is the process of finding bugs in developed or existing applications.

Need for Agent-Oriented Testing:

  • AI(Artificial Intelligence) is becoming one of the most popular technologies and the AI system is composed of agents and its environment.
  • There is a growing need for an agent-oriented system to tackle complex problems.


The agent is an independent program or entity that takes action according to information that it gains from the environment. The agent has a degree of intelligence that permits it to perform parts of its tasks autonomously and interacts with its environment in a rational manner.

Agent perceives the environment through sensors and acts on the environment through actors on the basis of current and previous experience.



Agent-Oriented Testing:

Agent-oriented testing is considered an extension of object-oriented testing, so firstly let’s understand What is Object-oriented testing?

  • Object-Oriented Testing: Object-oriented testing is a process that tests software using object-oriented paradigms like encapsulation, inheritance, polymorphism, etc. The object-oriented paradigm focuses on objects that are instances of classes. Object-oriented testing can be used to test object-oriented software as well as conventional software. Software engineers identify and specify the objects and services provided by each object and in addition, the interaction of any two objects and constraints on each identified object are also determined.
  • Agent-Oriented Testing: Basic unit of agent-oriented testing is the agent. Software undergoes many levels of testing from unit testing to acceptance testing where we test each agent separately and the interactions of agents. Agent-oriented programming is a specialization of Object-oriented programming so it focuses on object-oriented paradigm as well as pro-activity, reactivity, mobility, and social ability.

Proactive behavior involves acting in advance of a future situation, rather than reacting. Pro-activity is the prevention of conflict. It solves a problem before it has occurred. 

  • Reactivity is how fast a system can react or take action.
  • Mobility is how fast a system can adapt to changes.
  • Social ability means the social impact created by the software.

Agent-oriented testing is more complex compared to object-oriented testing because agents are dynamic in nature and change their behavior according to the situation to achieve their goals. Agent-oriented testing is dependent on the tools or techniques of object-oriented testing.

My Personal Notes arrow_drop_up
Related Articles

Start Your Coding Journey Now!