Abstract
Software driven technology has become a part of life and the quality of software largely depends on the extent of effective testing performed during various phases of development. A wide range of nature inspired searching techniques are employed over years to automate the testing process and provide promising solutions to elude the infeasibility of exhaustive testing. These techniques use metaheuristics and work by converting the problem space into search space. A subset of optimized solutions is searched that reduces overall time by shortening the testing time. Objective: An enhanced Artificial Bee Colony- Naïve Bayes optimizer for test case selection is proposed in this paper. This article also aims to provide brief insights into the emergence of hybrid swarm-inspired techniques over the last two decades. Method: The modified Artificial Bee colony is applied after component selection and further optimization is achieved using Naïve Bayes classifier. The proposed technique is implemented and evaluated taking three benchmark programs into consideration. The proposed technique is also compared to other competitive swarm intelligence-based techniques of its class. Results: The experimental results show that the proposed technique outperforms other swarm-inspired techniques in terms of execution time in a given scenario and capable of higher detection of faults with minimal test case selection. Conclusion: The proposed approach is an improvement over existing techniques and helps in huge time and cost saving. It will contribute to the testing society and enhance the overall quality of the software.
Highlights
Increasing demand in robust software can be seen as a consequence of rapidly developing hardware industry and outburst in evolution of technology
The proposed technique is applied on three component-based student projects and implemented in ten iterations with fault matrix of size 50*50 in each project
Errors are induced using mutation to test the efficiency of the proposed method
Summary
Increasing demand in robust software can be seen as a consequence of rapidly developing hardware industry and outburst in evolution of technology. With the increase in dependence of software and ever-growing system requirements, manual testing is not possible at every level of development. The manual testing time rises exponentially with increase in the length of code but this is not the case in automated testing. All you need to do is to write an isolated code called a ―Test Code‖ to test the main functional code This code can be executed any number of times to find errors whenever required. Unit testing automation involves testing each independent functional unit without considering the external dependencies. Optimization of such activities utilizes various engineering domains like data mining, artificial intelligence, machine learning, swarm intelligence and many more. This paper aims to utilize a swarm-based approach for optimization in the testing process
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have