Abstract
One of the challenging issues in software designing is testing the product in different condition. Various software Oracles had suggested in the literature, and the aim of all of them is minimizing the time and cost of the testing process. Software test Oracles have designed to do this job automatically with as less as possible human contribution. In this work, a novel Oracle based on deep learning and fuzzy inference system introduced. For this purpose, by the utility of Takagi-Sugeno-Kang fuzzy inference, the output of software mapped to the fuzzy space, and the deep neural network has trained by this data. Finally, data has remapped to the primary form and used as the competitor stage input. To validate the performance of the Oracle, four different models have chosen to assess the Oracle enforcement, and after training the Oracle by the correct output of applications, source codes have changed manually, and the efficiency of the Oracle monitored. Several measures have been applied to evaluate the accuracy of the test Oracle, and it is observed that in most cases Oracle correctly could detect the correct and false results. Finally, designing Oracles requires several preliminaries and in this work we only focus on the architecture of the system.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Ammann, P., Offutt, J.: Introduction to Software Testing. Cambridge University Press, Cambridge (2016)
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
Desikan, S., Ramesh, G.: Software Testing: Principles and Practice. Pearson Education India, New Delhi (2006)
Erhan, D., Szegedy, C., Toshev, A., Anguelov, D.: Scalable object detection using deep neural networks. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pp. 2147–2154 (2014)
Fraser, G., Rojas, J.M.: Software testing. Handbook of Software Engineering, pp. 123–192. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-00262-6_4
Gholami, F., Attar, N., Haghighi, H., Asl, M.V., Valueian, M., Mohamadyari, S.: A classifier-based test oracle for embedded software. In: 2018 Real-Time and Embedded Systems and Technologies (RTEST), pp. 104–111. IEEE (2018)
He, K., Zhang, X., Ren, S., Sun, J.: Deep residual learning for image recognition. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pp. 770–778 (2016)
Huang, P.S., He, X., Gao, J., Deng, L., Acero, A., Heck, L.: Learning deep structured semantic models for web search using clickthrough data. In: Proceedings of the 22nd ACM International Conference on Conference on Information & Knowledge Management, pp. 2333–2338. ACM (2013)
Jang, J.S.R., et al.: Fuzzy modeling using generalized neural networks and kalman filter algorithm. In: AAAI, vol. 91, pp. 762–767 (1991)
Khalilian, A., Mirzaeiyan, A., Vahidi-Asl, M., Haghighi, H.: Experiments with automatic software piracy detection utilising machine-learning classifiers for micro-signatures. J. Exp. Theor. Artif. Intell. 31(2), 267–289 (2019)
LeCun, Y., Bengio, Y., Hinton, G.: Deep learning. Nature 521(7553), 436 (2015)
Lee, C.C.: Fuzzy logic in control systems: fuzzy logic controller. I. IEEE Trans. Syst. Man Cybern. 20(2), 404–418 (1990)
Mamdani, E.H., Assilian, S.: An experiment in linguistic synthesis with a fuzzy logic controller. Int. J. Man Mach. Stud. 7(1), 1–13 (1975)
Perruchet, P., Peereman, R.: The exploitation of distributional information in syllable processing. J. Neurolinguistics 17(2–3), 97–119 (2004)
Powers, D.M.: Evaluation: from precision, recall and F-measure to ROC, informedness, markedness and correlation (2011)
Ran, L., Dyreson, C., Andrews, A., Bryce, R., Mallery, C.: Building test cases and oracles to automate the testing of web database applications. Inf. Softw. Technol. 51(2), 460–477 (2009)
Schnitman, L., Yoneyama, T.: Takagi-sugeno-kang fuzzy structures in dynamic system modeling. In: Proceedings of the IASTED International Conference on Control and Application (CA 2001), pp. 160–165 (2001)
Shahamiri, S.R., Kadir, W.M.N.W., Ibrahim, S.: An automated oracle approach to test decision-making structures. In: 2010 3rd IEEE International Conference on Computer Science and Information Technology (ICCSIT), vol. 5, pp. 30–34. IEEE (2010)
Shahamiri, S.R., Kadir, W.M.N.W., Ibrahim, S., Hashim, S.Z.M.: An automated framework for software test oracle. Inf. Softw. Technol. 53(7), 774–788 (2011)
Shahamiri, S.R., Kadir, W.M.N.W., Mohd-Hashim, S.Z.: A comparative study on automated software test oracle methods. In: Fourth International Conference on Software Engineering Advances, ICSEA 2009, pp. 140–145. IEEE (2009)
Sugeno, M., Kang, G.: Structure identification of fuzzy model. Fuzzy Sets Syst. 28(1), 15–33 (1988)
Takagi, T., Sugeno, M.: Derivation of fuzzy control rules from human operator’s control actions. IFAC Proc. Vol. 16(13), 55–60 (1983)
Takagi, T., Sugeno, M.: Fuzzy identification of systems and its applications to modeling and control. IEEE Trans. Syst. Man Cybern. 1, 116–132 (1985)
Watson, A.H., Wallace, D.R., McCabe, T.J.: Structured testing: a testing methodology using the cyclomatic complexity metric, vol. 500. US Department of Commerce, Technology Administration National Institute of Standards and Technology (1996)
Whittaker, J.A.: What is software testing? and why is it so hard? IEEE Softw. 17(1), 70–79 (2000)
Zadeh, L.A.: Outline of a new approach to the analysis of complex systems and decision processes. IEEE Trans. Syst. Man Cybern. 1, 28–44 (1973)
Zadeh, L.A., et al.: Fuzzy sets. Inf. Control 8(3), 338–353 (1965)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Monsefi, A.K., Zakeri, B., Samsam, S., Khashehchi, M. (2019). Performing Software Test Oracle Based on Deep Neural Network with Fuzzy Inference System. In: Grandinetti, L., Mirtaheri, S., Shahbazian, R. (eds) High-Performance Computing and Big Data Analysis. TopHPC 2019. Communications in Computer and Information Science, vol 891. Springer, Cham. https://doi.org/10.1007/978-3-030-33495-6_31
Download citation
DOI: https://doi.org/10.1007/978-3-030-33495-6_31
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-33494-9
Online ISBN: 978-3-030-33495-6
eBook Packages: Computer ScienceComputer Science (R0)