Testing Software Using Swarm Intelligence: A Bee Colony Optimization Approach
Journal Title: EAI Endorsed Transactions on Collaborative Computing - Year 2016, Vol 2, Issue 8
Abstract
Software testing is a critical activity in increasing our confidence of a system under test and improving its quality. The key idea for testing a software application is to minimize the number of faults found in the system. Software verification through testing is a crucial step in the application's development life cycle. This process can be regarded as expensive and laborious, and its automation is valuable. We propose a multi-objective search based test generation technique that is based on both functional and structural testing. Our Search Based Software Testing (SBST) technique is based on a bee colony optimization algorithm that integrates adaptive random testing from the functional side and condition/decision and multiple condition coverage from the structural side. The constructive approach that the bee colony algorithm uses for solution generation allows our SBST to address the limitations of previous approaches relying on fully random initial solutions and single objective evaluation. We perform extensive experimental testing to justify the effectiveness of our approach.
Authors and Affiliations
Omar El Ariss, Steve Bou ghosn, Weifeng Xu
SocialCloudShare: a Facebook Application for a Relationship-based Information Sharing in the Cloud
In last few years, Online Social Networks (OSNs) have become one of the most used platforms for sharing data (e.g., pictures, short texts) on the Internet. Nowadays Facebook and Twitter are the most popular OSN providers...
A Highly Concurrent Replicated Data Structure EAI Endorsed Transactions
Well defined concurrent replicated data structure is very important to design collaborative editing system, particularly, certain properties like out-of-order execution of concurrent operations and data convergence. In t...
Guest Editorial: Selected Papers from IEEE IEEE/EAI CollaborateCom 2013
This issue of EAI Transactions on Collaborative Computing includes extended versions of articles selected from the program of the 9th IEEE International Conference on Collaborative Computing: Networking, Applications...
Collaborating with executable content across space and time
Executable content is of growing importance in many domains. How does one share and archive such content at Internet-scale for spatial and temporal collaboration? Spatial collaboration refers to the classic concept of us...
Tracing Coordination and Cooperation Structures via Semantic Burst Detection
Developing technologies that support collaboration requires understanding how knowledge and expertise are shared and distributed among community members. We explore two forms of knowledge distribution structures, coordin...