Abstract
Adaptive random testing (ART) has been proved to be effective in improving the failure detection ability of random testing. As a lightweight ART algorithm, the ART by bisection (ART-B) can realize test case generation in a linear order of time complexity, but its ability for finding failures is not so strong. In this study, the dynamic bisection is used to generate candidates randomly from the empty regions as much as possible. For each candidate, two types of distances are taken into account. Then, a comprehensive distance metric is defined to determine the next test case from the candidate set. For the nearest neighbor query in the proposed ART by Bisection and Comprehensive Distance (ART-BCD), the distance-ware forgetting is adopted to ensure its computational cost is still in the linear order. To validate the effectiveness of ART-BCD algorithm, both simulation experiments and empirical studies are performed for comparative analysis. The experimental results show that ART-BCD is better than or comparable to the ART-B and other typical algorithms, such as the fixed-size-candidate-set ART (FSCS-ART), in most cases, especially for the block failure pattern.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Ammann, P., Offutt, J.: Introduction to Software Testing, 2nd edn. Cambridge University Press, Cambridge (2016)
Arcuri, A., Briand, L.: Adaptive random testing: an illusion of effectiveness? In: Proceedings of the 2011 International Symposium on Software Testing and Analysis (ISSTA 2011), pp. 265–275, July 2011
Chen, T.Y., Eddy, G., Merkel, R., Wong, P.K.: Adaptive random testing through dynamic partitioning. In: Proceedings of the 4th International Conference on Quality Software (QSIC 2004), pp. 79–86, September 2004
Chen, T.Y., Huang, D.H., Tse, T.H., Yang, Z.: An innovative approach to tackling the boundary effect in adaptive random testing. In: Proceedings of the 40th Annual Hawaii International Conference on System Sciences (HICSS 2007), pp. 262–271, January 2007
Chen, T.Y., Kuo, F.C., Merkel, R.G., Tse, T.H.: Adaptive random testing: the ART of test case diversity. J. Syst. Softw. 83(1), 60–66 (2010)
Chen, T.Y., Leung, H., Mak, I.K.: Adaptive random testing. In: Maher, M.J. (ed.) ASIAN 2004. LNCS, vol. 3321, pp. 320–329. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-30502-6_23
Chen, T.Y., Kuo, F.C., Merkel, R.: On the statistical properties of testing effectiveness measures. J. Syst. Softw. 79(5), 591–601 (2006)
Chow, C., Chen, T.Y., Tse, T.H.: The ART of divide and conquer: an innovative approach to improving the efficiency of adaptive random testing. In: Proceedings of the 13th International Conference on Quality Software (QSIC 2013), pp. 268–275, July 2013
Gutjahr, W.J.: Partition testing vs. random testing: the influence of uncertainty. IEEE Trans. Softw. Eng. 25(5), 661–674 (1999)
Hamlet, R.: Random testing. In: Marciniak, J.J. (ed.) Encyclopedia of Software Engineering, 2nd edn, pp. 1507–1513. Wiley, Chichester (2002)
Jia, Y., Harman, M.: An analysis and survey of the development of mutation testing. IEEE Trans. Softw. Eng. 37(5), 649–678 (2011)
Levin, S.: Uber crash shows ‘catastrophic failure’ of self-driving technology, experts say, 22 March 2018. https://www.theguardian.com/technology/2018/mar/22/self-driving-car-uber-deathwoman-failure-fatal-crash-arizona/
Mao, C., Chen, T.Y., Kuo, F.C.: Out of sight, out of mind: a distance-aware forgetting strategy for adaptive random testing. Sci. China Inf. Sci. 60, 092106:1–092106:21 (2017)
Mao, C., Zhan, X.: Towards an improvement of bisection-based adaptive random testing. In: Proceedings of the 24th Asia-Pacific Software Engineering Conference (APSEC 2017), pp. 689–694, December 2017
Mao, C., Zhan, X., Tse, T.H., Chen, T.Y.: KDFC-ART: a KD-tree approach to enhancing fixed-size- candidate-set adaptive random testing. IEEE Trans. Reliab. 68(4), 1444–1469 (2019)
Mariani, L., Pezz, M., Zuddas, D.: Recent advances in automatic black-box testing. Adv. Comput. 99, 157–193 (2015)
Mathur, A.P.: Foundations of Software Testing, 2nd edn. Addison-Wesley Professional, Boston (2014)
Mayer, J., Schneckenburger, C.: An empirical analysis and comparison of random testing techniques. In: Proceedings of the 2006 ACM/IEEE International Symposium on Empirical Software Engineering (ISESE 2006), pp. 105–114, September 2006
Rezaalipour, M., Talebsafa, L., Vahidi-Asl, M.: Arselda: an improvement on adaptive random testing by adaptive region selection. In: Proceedings of the 8th International Conference on Computer and Knowledge Engineering (ICCKE 2018), pp. 73–78, October 2018
Zhang, X.F., Zhang, Z.Z., Xie, X.Y., Zhou, Y.C.: An approach of iterative partition testing based on priority sampling. Chin. J. Comput. 39(11), 2307–2323 (2016). (in Chinese)
Zhou, M., Cheng, X., Guo, X., Gu, M., Zhang, H., Song, X.: Improving failure detection by automatically generating test cases near the boundaries. In: Proceedings of the IEEE 40th Annual Computer Software and Applications Conference (COMPSAC 2016), pp. 164–173, June 2016
Acknowledgments
This work was supported in part by the National Natural Science Foundation of China (Grant No. 61762040) and the Natural Science Foundation of the Jiangxi Province (Grant Nos. 20162BCB23036 and 20171ACB21031).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this paper
Cite this paper
Mao, C., Quan, M., Chen, Z., Chen, T.Y. (2020). Adaptive Random Testing by Bisection and Comprehensive Distance. In: Miao, H., Tian, C., Liu, S., Duan, Z. (eds) Structured Object-Oriented Formal Language and Method. SOFL+MSVL 2019. Lecture Notes in Computer Science(), vol 12028. Springer, Cham. https://doi.org/10.1007/978-3-030-41418-4_22
Download citation
DOI: https://doi.org/10.1007/978-3-030-41418-4_22
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-41417-7
Online ISBN: 978-3-030-41418-4
eBook Packages: Computer ScienceComputer Science (R0)