Mutation Testing Framework for Ad-hoc Networks Protocols

Computing networks integrate systems, services, and users around the world. Hundreds of protocols contribute to making such process flawless. A fault in protocol design or implementation can impact many users and interrupt their tasks’ workflows. Testing network protocols, whether static or dynamic, can take several approaches. Driven by the expansion of applications in different domains, in this paper, we evaluated fault-based testing techniques in testing network protocols. Out fault-based testing requirements are extracted based on network protocols’ specifications. Our main goal is to test whether fault-based testing techniques can find faults or bugs that cannot be discovered by classical network protocols’ testing techniques. One of the significant functional testing areas that fault-based techniques can work well in is conformance testing. They can test whether the network protocol is robust enough to validate test cases that conform with protocol specification and, on the other hand, invalidate test cases that do not show such conformance. We showed through several experiments that fault-based testing can prove conformance with less effort required through other testing approaches. Generated test scenarios serve as input for the network simulator. The quality of the test scenarios is evaluated based on three perspectives: (i) code coverage, (ii) mutation score, and (iii) testing effort. We implemented the testing framework in NS2. Experiments can be recreated using other simulation environments.

[1]  Teerawat Issariyakul,et al.  Introduction to Network Simulator NS2 , 2008 .

[2]  Wynne Hsu,et al.  DESIGN OF MUTANT OPERATORS FOR THE C PROGRAMMING LANGUAGE , 2006 .

[3]  Hossain Shahriar,et al.  OCL Fault Injection-Based Detection of LDAP Query Injection Vulnerabilities , 2016, 2016 IEEE 40th Annual Computer Software and Applications Conference (COMPSAC).

[4]  Huai Liu,et al.  Conformance Testing of Network Simulators Based on Metamorphic Testing Technique , 2009, FMOODS/FORTE.

[5]  A. Jefferson Offutt,et al.  MuJava: an automated class mutation system , 2005, Softw. Test. Verification Reliab..

[6]  Hong Zhu,et al.  Software unit test coverage and adequacy , 1997, ACM Comput. Surv..

[7]  Abdellah Ezzati,et al.  Comparative Analysis of Routing Protocols AODV DSDV and DSR in MANET , 2014 .

[8]  Aamer Nadeem,et al.  A Fault Based Approach to Test Case Prioritization , 2017, 2017 International Conference on Frontiers of Information Technology (FIT).

[9]  Wen Tang,et al.  A model guided security vulnerability discovery approach for network protocol implementation , 2011, 2011 IEEE 13th International Conference on Communication Technology.

[10]  Anneliese Amschler Andrews,et al.  Fail-Safe Testing of Safety-Critical Systems , 2014, 2014 23rd Australian Software Engineering Conference.

[11]  Mohammad Zulkernine,et al.  Mutation-Based Testing of Buffer Overflow Vulnerabilities , 2008, 2008 32nd Annual IEEE International Computer Software and Applications Conference.

[12]  Alexander L. Wolf,et al.  Simulation-based test adequacy criteria for distributed systems , 2006, SIGSOFT '06/FSE-14.

[13]  Mohammad Zulkernine,et al.  Mutation-Based Testing of Format String Bugs , 2008, 2008 11th IEEE High Assurance Systems Engineering Symposium.

[14]  Rami Bahsoon,et al.  Reduction-based methods and metrics for selective regression testing , 2002, Inf. Softw. Technol..

[15]  O. P. Sangwan,et al.  A systematic review on fault based mutation testing techniques and tools for Aspect-J programs , 2013, 2013 3rd IEEE International Advance Computing Conference (IACC).

[16]  Wen Tang,et al.  An effective fuzz input generation method for protocol testing , 2011, 2011 IEEE 13th International Conference on Communication Technology.