Effective Search-Based Approach for Testing Non-Functional Properties in Software System: an Empirical Review

  • Authors

    • N.M. Bala
    • S. Suhailan
    2018-11-30
    https://doi.org/10.14419/ijet.v7i4.28.22617
  • Search-based software testing (SBST) is considered an effective process in the generation of non-functional test cases. The SBST employs metaheuristic search techniques to evaluate the best-case and worst-case execution times of real-time scenarios. However, these search techniques suffer software re-modularization for software systems. In this paper, an exploratory review on some of these techniques such as Genetic Algorithms, Harmony Search and Simulated Annealing is presented by highlighting the fitness function employed, non – functional testing and the challenges observed. The review also investigates each technique based on different applications employed in a white box, black-box, and gray-box testing. It shows that Harmony Search-Based Algorithm is the effective technique to address the problem of software re-modularization.

  • References

    1. [1] Bertolino A. Software Testing Research : Achievements , Challenges , Dreams Software Testing Research : Achievements , Challenges , Dreams. IEEE Trans Softw Eng. 2007;(September):85–103.

      [2] Afzal W, Torkar R, Feldt R. A systematic mapping study on non-functional search-based software testing. Proc Twent Int Conf Softw Eng Knowl Eng. 2008;(2008):488–93.

      [3] Chen Y, Zhong Y. Automatic path-oriented test data generation using a multi-population genetic algorithm. In: Proceedings - 4th International Conference on Natural Computation, ICNC 2008. 2008. p. 566–70.

      [4] Wegener J, Sthamer H, Jones BF, Eyres DE. Testing real-time systems using genetic algorithms. Softw Qual J. 1997;6(2):127–35.

      [5] Alander J, Mantere T, Moghadampour G, Matila J. Searching protection relay response time extremes using genetic algorithm-software quality by optimization. 1997;

      [6] Briand LC, Labiche Y, Shousha M. Using genetic algorithms for early schedulability analysis and stress testing in real-time systems. In: Genetic Programming and Evolvable Machines. 2006. p. 145–70.

      [7] Mutoh A, Nakamura T, Computation SK-…, CEC’ 2003., 2003 undefined. Reducing execution time on genetic algorithm in real-world applications using fitness prediction: Parameter optimization of SRM control. ieeexplore.ieee.org.

      [8] Tracey N, Clark J, IFIP KM-P of the, 1998 undefined. The way forward for unifying dynamic test-case generation: The optimisation-based approach. eprints.whiterose.ac.uk.

      [9] Lu P, Cong X, Zhou D. The Research on Web-Based Testing Environment Using Simulated Annealing Algorithm. Sci World J. 2014;2014:1–12.

      [10] Arockiam L, e-Service NS-IJ of u-and, 2012 undefined. Simulated annealing versus genetic based service selection algorithms. earticle.net.

      [11] Ramírez A, Romero JR, Ventura S. An approach for the evolutionary discovery of software architectures. Inf Sci (Ny). 2015;305:234–55.

      [12] Nur A, Radzi N, of SS-IJ, 2015 undefined. Near Optimal Convergence of Back-Propagation Method using Harmony Search Algorithm. iaescore.com.

      [13] Qin Z, Denker G, Giannelli C, Bellavista P, Venkatasubramanian N. A software defined networking architecture for the internet-of-things. IEEE/IFIP NOMS 2014 - IEEE/IFIP Netw Oper Manag Symp Manag a Softw Defin World. 2014;

      [14] Xiang LY, Alsewari AA, Zamli KZ. Pairwise Test Suite Generator Tool Based On Harmony Search Algorithm ( HS-PTSGT ). UmpirUmpEduMy. 2015;2:62–5.

      [15] Omar M, Ebrahim MA, AbdelGhany AM, Bendary F. Tuning of PID controller for load frequency control problem via harmony search algorithm. Indones J Electr Eng Comput Sci. 2016;1(2):255–63.

      [16] Sambariya DK, Shrangi S. Optimal design of PID controller for load frequency control using harmony search algorithm. Indones J Electr Eng Comput Sci. 2017;5(1):19–32.

      [17] Amarjeet, Chhabra JK. Harmony search based remodularization for object-oriented software systems. Comput Lang Syst Struct. 2017;47:153–69.

      [18] Harman M, McMinn P, de Souza JT, Yoo S. Search Based Software Engineering: Techniques, Taxonomy, Tutorial. In Springer, Berlin, Heidelberg; 2012. p. 1–59.

      [19] Afzal W, Alone S, Glocksien K, Torkar R. Software test process improvement approaches: A systematic literature review and an industrial case study. Vol. 111, Journal of Systems and Software. 2016. p. 1–33.

      [20] Ali S, Briand LC, Hemmati H, Panesar-Walawege RK. A systematic review of the application and empirical investigation of search-based test case generation. Vol. 36, IEEE Transactions on Software Engineering. 2010. p. 742–62.

      [21] Ali S, Briand L, … HH-IT, 2010 undefined. A systematic review of the application and empirical investigation of search-based test case generation. ieeexplore.ieee.org.

      [22] Arcuri A. It does matter how you normalise the branch distance in search based software testing. In: ICST 2010 - 3rd International Conference on Software Testing, Verification and Validation. 2010. p. 205–14.

      [23] Blanco R, Tuya J, Adenso-Díaz B. Automated test data generation using a scatter search approach. Inf Softw Technol. 2009;51(4):708–20.

      [24] Harman M. Search Based Software Engineering for Program Comprehension. Progr Comprehension, 2007 ICPC ’07 15th IEEE Int Conf. 2007;3–13.

      [25] Michael C, McGraw G. Automated software test data generation for complex programs. Proc 13th IEEE Int Conf Autom Softw Eng (Cat No98EX239). 1998;1–12.

      [26] Kotelyanskii A, Kapfhammer GM. Parameter tuning for search-based test-data generation revisited: Support for previous results. In: Proceedings - International Conference on Quality Software. 2014. p. 79–84.

      [27] Moadab S, Rashidi H. Automatic path-oriented test data generation by boundary hypercuboids. J King Saud Univ - Comput Inf Sci. 2016;28(1):82–97.

      [28] Ferguson R, Korel B. The chaining approach for software test data generation. ACM Trans Softw Eng Methodol. 1996;5(1):63–86.

      [29] Shahamiri SR, Kadir WMNW, Mohd-Hashim SZ. A comparative study on automated software test oracle methods. In: 4th International Conference on Software Engineering Advances. 2009.

      [30] Ferguson R, and BK-AT on SE, 1996 undefined. The chaining approach for software test data generation. dl.acm.org.

      [31] Bringmann E, Krämer A. Model-based Testing of Automotive Systems. In: ICST ’08 Proceedings of the 2008 International Conference on Software Testing, Verification, and Validation. 2008. p. 485–93.

      [32] Nikolić I. How to use metaheuristics for design of symmetric-key primitives. In: Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics). 2017. p. 369–91.

      [33] Lefticaru R, Ipate F. A comparative landscape analysis of fitness functions for search-based testing. In: Proceedings of the 2008 10th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing, SYNASC 2008. 2008. p. 201–8.

      [34] Korel B. Automated software test data generation. IEEE Trans Softw Eng. 1990;16(8):870–9.

      [35] Petke J, Haraldsson S, Harman M, langdon william, White D, Woodward J. Genetic Improvement of Software: a Comprehensive Survey. IEEE Trans Evol Comput. 2017;(c):1–1.

      [36] McMinn P. Search-based software test data generation: a survey. Softw testing, Verif Reliab. 2004;14:1–58.

      [37] Meixler S, Brinkschulte U. Test Case Generation for Non-functional and Functional Testing of Services. Object/Component/Service-Oriented Real-Time Distrib Comput (ISORC), 2010 13th IEEE Int Symp. 2010;245–9.

      [38] Harman M, Jia Y, Zhang Y. Achievements, Open Problems and Challenges for Search Based Software Testing. 8th Int Conf Softw Testing, Verif Valid (ICST), 2015 IEEE. 2015;(Icst):1–12.

      [39] Canfora G, Penta M Di, Esposito R, Villani ML. An approach for QoS-aware service composition based on genetic algorithms. Genet Evol Comput Conf. 2005;1069.

      [40] G??ne?? Kayacik H, Nur Zincir-Heywood A, Heywood M. Evolving successful stack overflow attacks for vulnerability testing. In: Proceedings - Annual Computer Security Applications Conference, ACSAC. 2005. p. 225–32.

      [41] Del Grosso C, Antoniol G, Merlo E, Galinier P. Detecting buffer overflow via automatic test input data generation. Comput Oper Res. 2008;35(10):3125–43.

  • Downloads

  • How to Cite

    Bala, N., & Suhailan, S. (2018). Effective Search-Based Approach for Testing Non-Functional Properties in Software System: an Empirical Review. International Journal of Engineering & Technology, 7(4.28), 368-391. https://doi.org/10.14419/ijet.v7i4.28.22617