№2, 2022

Shahrokh Jalilian, Shafagat J. Mahmudova

As computing technology progresses, computer systems and their activity domain are becoming widespread, and software projects are becoming complicated in the current society. Software testing is time-consuming and expensive. It aims at validating software functional and non-functional requirements, including software performance. During the test stages, first, it is specified whether software elements perform their tasks accurately and create correct output. While in software testing at the program code level, we can text all circles and lines of program and conditional parts of the program while there needs data in these tests which can test all these cases and cold pass the program lines with the most coating that is one of the most challenging problems in this type of software tests. Therefore, Imperialist Competitive Algorithm, an advanced algorithm, is considered for producing optimal test data for finding errors in programs. Practical results and evaluating the proposed method with other methods indicate the presented algorithm's excellence (pp.46-54).

Keywords:Automatic Generation, Imperialist Competitive Algorithm, Error Detection, Software, Test Reliability
  • Parkin, R., & Australia, I. (1997) Software unit testing. The Independent Software Testing Specialists, IV & V Australia.
  • Häser, F., Felderer, M., Breu, R. (2014) Software paradigms, assessment types and non-functional requirements in model-based integration testing: a systematic literature review. In Proceedings of the 18th International Conference on Evaluation and Assessment in Software Engineering (p. 29). ACM.
  • Suri, B., Mangal, I. (2012) Analyzing test case selection using a proposed hybrid technique based on BCO and genetic algorithm and comparison with ACO. International Journal of Advanced Research in Computer Science and Software Engineering, 2(4).
  • Bhasin, H. (2013) A Novel Approach to Cost Cognizant Regression Testing. International Journal of Computer Science and Management Research, 2(5), 2595-2600.
  • Suri, B., & Singhal, S. (2011) Analyzing test case selection & prioritization using ACO. ACM SIGSOFT Software Engineering Notes, 36(6), 1-5.
  • Wang, C., Pastore, F., Goknil, A., Briand, L., Iqbal, Z. (2015) Automatic generation of system test cases from use case specifications. In Proceedings of the 2015 International Symposium on Software Testing and Analysis (pp. 385-396). ACM.
  • Mao, K., Harman, M., Y. (2016) Sapienz: Multi-objective automated testing for Android applications. In Proceedings of the 25th International Symposium on Software Testing and Analysis (pp. 94-105). ACM.
  • Nguyen, B. N., Robbins, B., Banerjee, I., Memon, A. (2014) GUITAR: an innovative tool for automated testing of GUI-driven software. Automated software engineering, 21(1), 65-105.
  • Ahmed, B. S., Sahib, M. A., Potrus, M. Y. (2014) Generating combinatorial test cases using Simplified Swarm Optimization (SSO) algorithm for automated GUI functional testing. Engineering Science and Technology, an International Journal, 17(4), 218-226.
  • Tang, H., Wu, G., Wei, J., Zhong, H. (2016) Generating test cases to expose concurrency bugs in Android applications. In Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering (pp. 648-653). ACM.
  • Wu, Y. C., & Fan, C. F. (2014) Automatic test case generation for structural testing of function block diagrams. Information and Software Technology, 56(10), 1360-1376.
  • Panichella, A., Kifetew, F. M., Tonella, P. (2018) Automated test case generation as a many-objective optimization problem with a dynamic selection of the targets. IEEE Transactions on Software Engineering, 44(2), 122-158.
  • Kalaee, A., Rafe, V. (2016) An optimal solution for test case generation using ROBDD graph and PSO algorithm. Quality and Reliability Engineering International, 32(7), 2263-2279.
  • Jordehi, A. R. (2015) Enhanced leader PSO (ELPSO): a new PSO variant for solving global optimization problems. Applied Soft Computing, 26, 401-417.
  • Anand, S., Burke, E. K., Chen, T. Y., Clark, J., Cohen, M. B., Grieskamp, W, Li, J. J. (2013) An orchestrated survey of methodologies for automated software test case generation. Journal of Systems and Software, 86(8), 1978-2001.
  • Pravin, A., Srinivasan, D. S. (2013) An efficient algorithm for reducing the test cases is used for performing regression testing. In 2nd International Conference on Computational Techniques and Artificial Intelligence, Dubai (UAE) (pp. 194-197).
  • Pravin, A., Srinivasan, S. (2013) Effective Test Case Selection and Prioritization in Regression Testing. Journal of Computer Science 9 (5): 654-659, 2013 ISSN 1549-3636.
  • Ahmed, B. S., Sahib, M. A. & Potrus, M. Y. (2014) Generating combinatorial test cases using Simplified Swarm Optimization (SSO) algorithm for automated GUI functional testing. Engineering Science and Technology, an International Journal, 17(4), 218-226.
  • Ahmed, B. S. (2016) Test case minimization approach using fault detection and combinatorial optimization techniques for configuration-aware structural testing. Engineering Science and Technology, an International Journal, 19(2), 737-753.
  • Alkhalifa, Z., Nair, V. S., Krishnamurthy, N., Abraham, J. A. (1999) Design and evaluation of system-level checks for on-line control flow error detection. IEEE Transactions on Parallel and Distributed Systems, 10(6), 627-641.
  • Hasan, B. K., Mohsen, R. M., Farhad, H., L. (2021) Ranking of decision making units using the imperialist competitive algorithm in DEA.  Measurement and Control, 54(9), 1326-1335. https://doi.org/10.1177/00202940211028883
  • Jian-Li, L. I., Qing-Ping, T. A. N., Tan, L. F., Jian-Jun, X. U. (2014) Control flow checking Method based on Abstract Basic Block and Formatted Signature. Chinese Journal of Computers, 37(11).
  • Venkatasubramanian, R., Hayes, J. P., & Murray, B. T. (2003) Low-cost on-line fault detection using control flow assertions. In 9th IEEE On-Line Testing Symposium, 2003. IOLTS 2003. (pp. 137-143). IEEE.
  • Oh, N., Shirvani, P. P., & McCluskey, E. J. (2002) Control-flow checking by software signatures. IEEE transactions on Reliability, 51(1), 111-122.
  • Li, A., Hong, B. (2010) On-line control flow error detection using relationship signatures among basic blocks. Computers & electrical engineering, 36(1), 132-141.
  • Liu, L., Ci, L., Liu, W. (2016) Control-Flow Checking Using Branch Sequence Signatures. In 2016 IEEE International Conference on Internet of Things (iThings) and IEEE Green Computing and Communications (GreenCom) and IEEE Cyber, Physical and Social Computing (CPSCom) and IEEE Smart Data (SmartData) (pp. 839-845). IEEE.