Extension of Object-Oriented Software Testing Techniques to Agent Oriented Software Testing (original) (raw)

Regression Testing Techniques for Agent Oriented Software

2008

In recent years, agent-based systems have received considerable attention in both academics and industry. The agent-oriented paradigm can be considered as a natural extension of the object-oriented (OO) paradigm. In this paper, a procedure using message flow graph (MFG) for regression testing of agent oriented software systems is proposed. This method however can be used when the interaction pattern of an agent changes. Furthermore a procedure for selection of modification-traversing regression test cases using execution trace is proposed. For illustration purpose, a multi agent air ticket booking system is implemented using JADE 3.5 and tested using our proposed methods.

Test-driven agent-oriented software development

Proceedings of 2012 IEEE 17th International Conference on Emerging Technologies & Factory Automation (ETFA 2012), 2012

Lack of awareness about the potentials of agent technology, as well as concerns regarding stability, scalability, and survivability especially in unpredictable environments of attacks and system failures are identified as major reasons for missing trust in the idea of delegating tasks to autonomous agents. Therefore, one of the key research issues is how the quality of Multi-Agent Systems can be assured, while at the same time reducing the development efforts to enhance the acceptance of agent technology in the industry. In order to ensure the industrial relevance, we focus on development of methods and techniques for the evaluation and tests of agent-based control applications. Our research covers the development of demonstration framework, including pilot implementations in industriallike settings.

An Agent-Based Framework for Automated Testing of Web-Based Systems

Journal of Software Engineering and Applications, 2011

Parallel to the considerable growth in applications of web-based systems, there are increasing demands for methods and tools to assure their quality. Testing these systems, due to their inherent complexities and special characteristics, is complex, time-consuming and challenging. In this paper a novel multi-agent framework for automated testing of webbased systems is presented. The main design goals have been to develop an effective and flexible framework that supports different types of tests and utilize different sources of information about the system under test to automate the test process. A prototype of the proposed framework has been implemented and is used to perform some experiments. The results are promising and prove the overall design of the framework.

Multi-agent systems implementation and testing

2004

The need of software tools for designing and testing complex distributed multi-agent systems is considerable. Over the past few years we have been developing a theoretical and practical methodology for designing, implementing and testing multi-agent systems. As part of this effort an agent-oriented CASE tool, which aims at simplifying the multi-agent system designer's work, and a testing framework, which provides a uniform and automated approach to the testing of multi-agent systems, have been designed and implemented. The aim of this paper is to give an overview of that work with particular attention to the recent results achieved. Therefore the paper mainly focuses on the testing tool and the issues connected with the diagrammatic notations, which should support developers when moving from the design phase towards the implementation phase of multi-agent systems.

Automated unit testing for agent systems

2nd International Working Conference on Evaluation of Novel …

Abstract: Although agent technology is gaining world wide popularity, a hindrance to its uptake is the lack of proper testing mechanisms for agent based systems. While many traditional software testing methods can be gen- ...

Designing Multi-Agent Unit Tests Using Systematic Test Design Patterns

Multi-Agent Systems (MASs) is the branch of Artificial Intelligence (AI) that views intelligence as the result of a complex structural arrangement of multiple independent autonomous interacting agents; in other words it is a social theory of intelligence. Multi-agent systems gained much interest in recent years because of the increasing complexity, openness, and distributivity of current and future systems. As intelligent agent-based systems take over operations in the financial community, transportation, manufacturing, utilities, aerospace, and the military, assurances will need to be given to the owners and operators of these systems assuring that these non-deterministic learning systems operate correctly. One important class of problems in multi-agent systems is testing such autonomous entities, where requirements have to be specified primarily as goals or context for agent behavior. The main challenge for intelligent agent testing arises from the agent flexibility. This thesis addresses a MAS unit testing approach which aims at removing faults along the application development phase. We present a tool for designing test cases to help MASs developers in testing each agent individually. It relies on the use of Mock Agents to guide the design and implementation of agent unit test cases. The implementation of this approach is built on top of JADE platform. This approach extended JUnit test framework in order to execute JADE test cases. We design test patterns for the ten most famous MAS social design patterns found in the literature of Agent Design Patterns. For the sake of generality and extensibility, we implement an Eclipse plug-in that gives the ability to the MAS unit test developer to generate the Mock Agent that interacts with his/her Agent Under Test (AUT) through a set of design patterns. By this way, the MAS developer focuses on the Business Logic of his/her MAS without the burden of building Unit Testing Framework to create Test Cases. We provide the first implementation that triggers the refactoring process. The developer the uses the reflection of the Eclipse SDK to reflect the changes made in the AUT (to complete its actual behaviour) in the generated mock agent. Our repository consists of a set of XML files that represent the behaviour of the different mock agents existing in the implemented design patterns. In our work, we provide implementations for a vast majority of agent design patterns (the ten agent social design patterns). We evaluate the code coverage by using EMMA a code coverage tool to proof that the generated test files (mock agent, associated resource file, and AUT test case) from our Eclipse Plug-in totally covers the AUT code. http://main.eulc.edu.eg/eulc\_v5/Libraries/Thesis/BrowseThesisPages.aspx?fn=PublicDrawThesis&BibID=10872206

TGAF: Testing of Generic Agent Framework

Testing of agent systems are difficult comparing with traditional software testing. Agents require special methodologies and techniques that address testing and reliability of these systems. This paper introduces a testing and recovery mechanism for detecting run time errors in agents and agent-based systems. This mechanism is added to a Generic Agent Framework that supports multi-agent based system, mobile agent based system, and hybrid system that contain both mobile and multi-agent capabilities. A multi agent system that contains mobile agents for hyper market offers is developed and tested. A testing of that system proved that the recovery mechanism enhances the handling of mobile agent, where the agent can complete its itinerary in case of one or more agent servers has (have) problems. The state of mobile agent is keeping and not destroyed during any problems in networks.

Designing multi-agent unit tests using systematic test design patterns-(extended version)

ABSTRACT: Software agents are the basic building blocks in many software systems especially those based on artificial intelligence methods, e.g., reinforcement learning based multi-agent systems (MASs). However, testing software agents is considered a challenging problem. This is due to the special characteristics of agents which include its autonomy, distributed nature, intelligence, and heterogeneous communication protocols. Following the test-driven development (TDD) paradigm, we present a framework that allows MAS developers to write test scenarios that test each agent individually. The framework relies on the concepts of building mock agents and testing common agent interaction design patterns. We analyze the most common agent interaction patterns including pair and mediation patterns in order to provide stereotype implementation for their corresponding test cases. These implementations serve as test building blocks and are provided as a set of ready-for-reuse components in our repository. This way, the developer can concentrate on testing the business logic itself and spare him/her the burden of implementing tests for the underlying agent interaction patterns. Our framework is based on standard components such as the JADE agent platform, the JUnit framework, and the eclipse plug-in architecture. In this paper, we present in details the design and function of the framework. We demonstrate how we can use the proposed framework to define more stereotypes in the code repository and provide a detailed analysis of the code coverage for our designed stereotype test code implementations.

Review Paper on Multi-Agent Based Software Testing

International Journal of Engineering Research and, 2017

Software testing plays vital role in software development life cycle to give out an accurate, sensible and a secure product. In recent times manual testing replaced by automated tools. But automated testing solution to is not economically efficient as it requires licensing and human involvement so a framework is required to overcome the above shortcoming. Agents have been introduced in this field to work on behalf of manual testing; also do they compensate the above complexities as they cognitively test application in place of testers The paper examines the aspects of software testing as well as the role of multi agent in software testing in addition to the contribution of cloud computing in this region

A Multi-Agent Framework for Testing Distributed Systems

Software testing is a very expensive and time consuming process. It can account for up to 50% of the total cost of the software development. Distributed systems make software testing a daunting task. The research described in this paper investigates a novel multi-agent framework for testing 3-tier distributed systems. This paper describes the framework architecture as well as the communication mechanism among agents in the architecture. Web-based application is examined as a case study to validate the proposed framework. The framework is considered as a step forward to automate testing for distributed systems in order to enhance their reliability within an acceptable range of cost and time.