A Review of Automatic Generation of Test Cases from Use Case Specification

preprint OA: closed CC-BY-4.0

Abstract

Abstract Software testing is an integral phase in the software development life cycle (SDLC). It refers to the process of verifying and evaluating the function of a software product. Among the testing activities, test case generation affects the effectiveness and efficiency of the testing process and requires a significant amount of effort and time. To reduce the effort and time involved in the manual test case generation process, significant research effort has been dedicated to the automatic generation of test cases. Although the majority of the proposed approaches are based on UML models, some works have presented a test case generation approach based on specifications. This literature review (LR) discusses use case specification-based automatic test case generation approaches and the methods used to validate them. Additionally, the review shows how the approaches differ in addressing some current issues in software testing.
Full text 54,590 characters · extracted from preprint-html · click to expand
A Review of Automatic Generation of Test Cases from Use Case Specification | Research Square window.SnipcartSettings = { analytics: { enabled: false } }; (function() { var accessVector = localStorage.getItem('access_vector') || ''; window.dataLayer = window.dataLayer || []; if (accessVector) { window.dataLayer.push({ user: { profile: { profileInfo: { snid: accessVector } } } }); } })(); (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src='https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);})(window,document,'script','dataLayer','GTM-K279D39R'); Browse Preprints In Review Journals COVID-19 Preprints AJE Video Bytes Research Tools Research Promotion AJE Professional Editing AJE Rubriq About Preprint Platform In Review Editorial Policies Our Team Advisory Board Help Center Sign In Submit a Preprint Cite Share Download PDF Systematic Review A Review of Automatic Generation of Test Cases from Use Case Specification Surafiel Habib Asefa This is a preprint; it has not been peer reviewed by a journal. https://doi.org/ 10.21203/rs.3.rs-2885830/v2 This work is licensed under a CC BY 4.0 License Status: Posted Version 2 posted You are reading this latest preprint version Show more versions Abstract Software testing is an integral phase in the software development life cycle (SDLC). It refers to the process of verifying and evaluating the function of a software product. Among the testing activities, test case generation affects the effectiveness and efficiency of the testing process and requires a significant amount of effort and time. To reduce the effort and time involved in the manual test case generation process, significant research effort has been dedicated to the automatic generation of test cases. Although the majority of the proposed approaches are based on UML models, some works have presented a test case generation approach based on specifications. This literature review (LR) discusses use case specification-based automatic test case generation approaches and the methods used to validate them. Additionally, the review shows how the approaches differ in addressing some current issues in software testing. Software Engineering Software Testing Automatic Test Case Generation Use-Case Specification 1. Introduction Software testing is an investigation conducted to provide stakeholders with information about the quality of the product or service under test. It involves executing a program or application with the intent of finding software bugs (errors or defects). Depending on the software methodology, testing can be implemented at any time in the development process. However, most of the test effort occurs after the requirements have been defined and the coding process has been completed. The testing stage is one of the most sensitive stages of software development and includes about 50% of the software development costs [ 1 , 2 ]. The testing process includes test case generation, test case selection, test case execution, and test case evaluation. Among the activities, test case generation is the most intellectually demanding and critical, as it can have a strong impact on the effectiveness and efficiency of the whole testing process [ 3 , 4 ]. Thus, the main focus during software testing is to reduce the number of test cases into a manageable test set and to take calculated risks about what is and what isn't important to test [ 3 ]. Over the past two decades, significant research effort has been devoted to automatic test case generation to reduce the cost and effort involved in manual test case generation and validation. Automatic test generation not only reduces the cost and effort of testing but also ensures that all requirements are properly covered in test cases [ 5 , 6 ]. The majority of the automatic test case generation approaches presented require system specifications to be captured as UML behavioral models such as activity diagrams, state charts, and sequence diagrams [6,7]. Approaches that do not utilize behavioral modeling generate executable system test cases by exploiting the behavioral information implicitly described in use case specifications [ 8 ], a textual description of the functionality provided by the system that is widely used for communicating requirements among stakeholders and, facilitating communication with customers. This literature review (LR) seeks to explore the approaches used for the automatic generation of test cases from use case specification and the method of validation for each approach. The rest of the paper is organized as follows. Section 2 discusses the methodology for the literature review. Section 3 presents the results of the review. Section 4 presents a discussion of the results and Section 5 provides a conclusion to the LR and gives future work suggestions. 2. Methodology This study adopted an approach presented by Kitchenham [ 11 ] to conduct an SLR on the research topic. The process of the review consists of three phases: plan review, conduct review, and document review. In the first phase, the following research questions (RQs) are raised: RQ1: What approaches have been introduced for automatically generating test cases from use case specification? RQ2: How have the approaches been validated? Five different online databases were used in this study to search for the most relevant papers published between 2012 and 2023. These include IEEE Xplore, Springer Link, Science Direct, ResearchGate, and Google Scholar. For the search, a Boolean search string was used on the databases to find the answers to the research questions above. The search term was described as follows: ((automatic OR automated) AND (“test case generation” OR “generating test case” OR “generate test case”)) AND (“use case specification” OR “use case”). The inclusion criteria for research works were: the use of only English between the specified years in a recognized journal or conference and the exclusion criteria was if the generation approach is not based on use case specifications or is a manual approach. In the second phase, a paper selection process was conducted using title and abstract screening, free availability, duplicate removal, and full-text selection based on the inclusion and exclusion criteria. All papers that did not have any correlation with the specific domain were removed from the selected papers. Followed by a quality assessment (QA) process done to evaluate the selected papers’ quality. The QA questions for this review are: Does the study include use case specification-based automated test case generation? Is the study capable of answering the research questions? Is the approach well described so that the author or others can validate it in later research? and Is the paper well/appropriately referenced? A scoring technique was adopted, where three possible scores can be given to an answer to each QA question: ‘‘1’’ for ‘‘Yes’’, ‘‘0.5’’ for ‘‘Partly’’, and ‘‘0’’ for ‘‘No’’. Three relevant papers were selected for this study based on the sum of the total score for all four QA questions. From the chosen papers: authors’ names, published year, paper’s title, objective, methodology, findings, and future works were extracted. The extracted data were synthesized to answer the research questions. Finally, in the third phase, the review was written. 3. Results RQ1: What approaches have been introduced for automatically generating test cases from use case specification? [ 12 ] Presents Use Case Specification Language Test Case Generation (USLTG), an approach for automatically generating system test cases from precise use case specification. The use case specification is modeled with use case specification language (USL). The model automatically generates other software artifacts by making model transformations. USLTG implements a scenario generation algorithm to generate a set of constrained use case scenarios from a USL model. Test input data suites are generated for each scenario by solving Object Constraint Language (OCL) constraints in the corresponding use case scenario. The use case scenarios and test data suites are transformed into a Test Case Specification Language (TCSL) model that provides notations for reusable test cases that are understandable for non-technical stakeholders and precise enough for system testing. [ 13 ] Proposes Use Case Modelling for System Tests Generation (UMTG) to automatically generate test cases by generating behavioral information and high-level operation descriptions from use cases. Requirement specifications are used to manually create a domain model as a UML class diagram which is checked for completeness to ensure the generation of correct and complete test input. UMTG further processes the use cases with the OCL constraints to generate a Use Case Test Model. An algorithm covers all the paths of the Use Case Test Model and generates a list of scenario and object Diagram pairs. UMTG searches for the attributes in the object diagram that appear in the constraints of the scenario to identify the whole set of input values for the test case. Using a mapping table, UMTG parses each high-level operation description and automatically generates executable test cases. [ 14 ] Proposes an automatic approach to generate test cases from the use case description model. Based on [ 15 ] as a template to create a complete description of a use case by including all the relevant details which case will be used as input to the Algorithm of Control Flow Diagram (ACFD) to generate a control flow diagram. The control flow diagram is used as input for the Proposed Tool of Generating Test Paths (PTGTP) which generates test paths (test cases). The algorithm of Test Paths Optimization (ATPO) is executed to determine the test path achieving the maximum coverage and a genetic algorithm was used to optimize the test paths and evaluate the adequacy of generated test cases. RQ2: How have the approaches been validated? The review finds that the methods used for the validation of approaches are experiment (33.3%) and comparative analysis (66.6%). In [ 12 ] an experiment was used to generate system test cases for a use case specification. The approach generated five test scenarios and eight test input data suites, which combined to form eight test cases. In a case study [ 13 ], UMTG is used to generate test cases from the use cases that correspond to the main functionalities of BodySense, a safety-critical automotive software developed by IEE. The results of the case study indicate that the approach is more effective in terms of time consumption and considers the approach feasible in an industrial context. In [ 14 ], a case study is used to demonstrate the feasibility and efficiency of the proposed approach. To evaluate the results of the case study, the authors compare the proposed approach with the approach in [ 16 ]. The paper finds that the proposed approach is more efficient in terms of time consumption and achieves 100% transition coverage. 4. Discussion The presence of ambiguity is one of the defining characteristics of natural language. A common cause of software project failure is inadequately produced specifications commonly written in plain English or other natural languages [ 17 ]. UMTG [ 13 ] uses Restricted Use Case Modeling (RUCM) which provides restriction rules and specific keywords constraining the use of natural language in use cases so that test cases cover every specification. The use of a modeling language reduces the ambiguities of natural language and the risk of project failure resulting from ambiguous software specifications. According to [ 18 ] modeling specifications can reduce the time and effort spent in test case generation, thus the use of models in the approach [ 13 ] also decreases the time and effort required by software engineers to add missing specifications into new or existing test cases. Likewise, the approach in [ 14 ], uses a template [ 15 ] to create a complete description of use cases by including all the relevant details to eliminate manual intervention to ensure the coverage of essential requirements by test cases. UMTG [ 13 ] requires the involvement of software engineers for half of the ten steps in the approach: to elicit use cases, model the domain, refine the model, specify constraints and specify the mapping table. Manual intervention is required by the software engineer between nearly every automated step. On the contrary, the approaches proposed in [ 12 , 14 ] are fully automatic and do not require manual work. Nonetheless, UMTG [ 13 ] can generate test cases parallelly in a multicore platform, decreasing the performance time which would be increased due to manual intervention. Because the approach is developed for an industrial context, parallel execution is a practical solution to the increase in performance time caused by the required manual intervention [ 19 ] because of the tools used in industrial software development. UMTG [ 13 ] focuses on the automation of functional system testing, which requires the generation of parameter values (additional input data) to guarantee the coverage of all the use case scenarios. The approach is an important contribution to software testing since one of the biggest challenges in test case generation is maintaining high levels of coverage to ensure that increasingly complex products meet quality standards [ 20 ]. USLTG [ 12 ] also takes this challenge into account by generating a set of test cases and providing the test agent with the best test case that achieves the highest transition coverage (100% coverage). [ 14 ] also reports that the generated test cases reached an activity path coverage criterion which is used for both loop testing and concurrency among activities of activity diagrams and that the validity of test paths was evaluated by Cyclomatic complexity, which indicates that the test cases generated from the proposed approach will be compatible with the complexity of the software that will represent the case of the research 5. Conclusion and Recommendation for Future work In order to minimize the time and effort involved in manual test case generation, automatic test case generation approaches have been developed. This paper presents a literature review of the works in use case specification-based automatic test case generation. The results of the review show that Use Case Specification Language Test Case Generation (USLTG), Use Case Modelling for System Tests Generation (UMTG), and an un-named test case generation approach have been introduced and validated. Although there are variations in the implementation, the steps in the identified approaches remain consistent: the use case specification is represented as a model, and the model is used to generate constrained use case scenarios which are then transformed into test cases. The approaches are validated by an experiment (33.3%) and comparative analysis (66.6%). In the approaches that used comparative analysis, a case study was conducted. In one approach, the case study applied use case specifications identical to those of a selected software system, while another utilized use case specifications similar to those of the approach it used for comparison. In addition, the review finds that the approaches have addressed one or more issues in software testing such as the considerable amount of time and effort required for test case generation, the risk of project failure due to ambiguous software specifications, and the coverage of all use case scenarios in test cases. From the review, we have found that further studies are necessary to address the most significant issues in automated software testing. Future research could provide an approach to eliminate the manual intervention required to refine models in automated test case generation solutions. Such research could contribute to decreasing the time and cost of the software testing process. References [1] J. Myers, C. Sandler, and T. Badgett, T he Art of Software Testing. Canada.: John Wiley & Sons, Inc., 2012. [2] A. Mailewa, J. Herath, and S. Herath, “A survey of effective and efficient software testing,” The Midwest Instruction and Computing Symposium (MIC S), vol. 48, pp. 64-79, April 2015. [3] M. Alian, D. Suleiman, and A. Shaout, “Test Case Reduction Techniques – Survey,” International Journal of Advanced Computer Science and Applications (IJACSA), vol. 7, no. 5, pp. 264-275, 2016. [4] I. Rehman, and S. Malik, “The impact of test case reduction and prioritization on software testing effectiveness,” International Conference on Emerging Technologies, vol. 9, pp. 416-421, October 2009. [5] S.M. Mohi-Aldeen, S. Deris, S. Mustafa, and R. Mohamad, “Comparative Evaluation of Automatic Test Case Generation Methods,” Technology, Education, and Science International Conference (TESIC), vol. 2 , pp. 66-74, November 2013. [6] S. Anand, E.K. Burke, T.Y. Chen, J. Clark, MB Cohen, W. Grieskamp, M. Harman, M.J. Harrold, and P. McMinn, “An orchestrated survey of methodologies for automated software test case generation,” J ournal of Systems and Software , vol. 86, no. 8, pp. 1978-2001, August 2013. [7] R.K. Sahoo, D. Ojha, D.P. Mohapatra, and M.R. Patra, “Automated test case generation and optimization: a comparative review,” International Journal of Computer Science & Information Technology , vol.8, no. 5, pp.19-32, October 2016. [8] S. Tiwari, and A. Gupta, “A systematic literature review of use case specifications research. Information and Software Technology,” Information and Software Technology, vol. 67, pp.128- 158, November 2015. [9] E. Shamsoddin-Motlagh, “A review of automatic test cases generation ,” International J ournal of Computer Application s, vol. 57, no. 13, January 2012. [10] S. Kannan and T. Pushparaj, “A Survey on Automatic Test Case Generation,” J ournal of T rend in Research and Developmen t, vol. 3, no. 6, pp. 717-720, December 2016. [11] B. Kitchenham, O.P. Brereton, D. Budgen, M. Turner, J. Bailey, and S. Linkman, “Systematic literature reviews in software engineering–a systematic literature review,” Information and software technology , vol. 51, no. 5, pp.7-15, January 2009. [12] C.T. Hue, D.D. Hanh, and N.N. Binh, “A transformation-based method for test case automatic generation from use cases, ” International Conference on Knowledge and Systems Engineering (KSE) , vol. 10, pp. 252-257, November 2018. [13] C. Wang, F. Pastore, A. Goknil and L. C. Briand, "Automatic Generation of Acceptance Test Cases From Use Case Specifications: An NLP-Based Approach," T ransactions on Software Engineering, vol. 48, no. 2, pp. 585-616, February 2020. [14] T.A. Alrawashed, A. Almomani, A. Althunibat, and A. Tamimi, “An Automated Approach to Generate Test Cases From Use Case Description Model,” Computer Modeling in Engineering & Sciences (CMES), vol. 119, no. 3, pp. 409–425, June 2019. [15] A. Cockburn, “Structuring use cases with goals,” J ournal of object-oriented programming , vol. 10, no. 5, pp. 56-62, September 1997. [16] C. Nebut, F. Fleurey, L. Traon, and J.M. Jezequel, “Automatic test generation: A use case driven approach,” Transactions on Software Engineering , vol. 32, no. 3, pp. 140-155, March 2006. [17] I.K. Raharjana, D. Siahaan, and C. Fatichah, “User stories and natural language processing: A systematic literature review,” IEEE Access , vol. 9, pp. 53811-53826, April 2021. [18] M. Utting, A. Pretschner, and B. Legeard, “A taxonomy of model‐based testing approaches,” Software testing, verification, and reliability , vol. 22, no. 5, pp. 297-312, August 2012. [19] V. Vyatkin, “Software engineering in industrial automation: State-of-the-art review,” IEEE Transactions on Industrial Informatics , vol. 9, no. 3, pp. 1234-1249, April 2013. [20] G. Candea, and P. Godefroid, “Automated software test generation: some challenges, solutions, and recent advances,” Computing and Software Science , pp. 505-531, 2019. Additional Declarations We (the Authors) declare no competing interests;We hereby formally declare that we do not have any conflicts of interest that could potentially influence the outcome or interpretation of our research or any corresponding publications. This encompasses any personal or financial relationships that could potentially affect our findings in a biased manner. Cite Share Download PDF Status: Posted Version 2 posted You are reading this latest preprint version Show more versions Research Square lets you share your work early, gain feedback from the community, and start making changes to your manuscript prior to peer review in a journal. As a division of Research Square Company, we’re committed to making research communication faster, fairer, and more useful. We do this by developing innovative software and high quality services for the global research community. Our growing team is made up of researchers and industry professionals working together to solve the most critical problems facing scientific publishing. Also discoverable on Platform About Our Team In Review Editorial Policies Advisory Board Help Center Resources Author Services Accessibility API Access RSS feed Manage Cookie Preferences © Research Square 2026 | ISSN 2693-5015 (online) Privacy Policy Terms of Service Do Not Sell My Personal Information {"props":{"pageProps":{"initialData":{"identity":"rs-2885830","acceptedTermsAndConditions":true,"allowDirectSubmit":true,"archivedVersions":[],"articleType":"Systematic Review","associatedPublications":[],"authors":[{"id":197308166,"identity":"f0851e67-0521-4cdd-a19e-ba70bd7c4df9","order_by":0,"name":"Surafiel Habib Asefa","email":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZAAAAAyAQMAAABI0h/eAAAABlBMVEX///8AAABVwtN+AAAACXBIWXMAAA7EAAAOxAGVKw4bAAABF0lEQVRIiWNgGAWjYLCCCgMGGQYJBjaGxAYbiAgPIS1nDIBqIFrSEFrwajvDANXC2HCYsBb5GbkPPxwosOFhkG5+9uDhjvPy/DMSGB+8bWOQs8ehxeBGurHEAYM0HgaZY+YGiWduG864kcBsOLeNwRiXLQYSaQzSHwwOAx2WYCaR2HabseFGAps0bxtDYg9Oh6Ux/zhg8B+oJf0bUMs5+/k3Eth/A7XU49LCcCONDeiwA0AtOSBbDiRuANrCDNSSgNNhZ56xWRwwSOZhk8gpB/olOXnjmYfNknPOSRj2HMDhsPY05hsH/tjJ8Uukb3v4c4ed7bzjyQc/vCmzkWdvwOUyKGBDMBlBaiUIqB8Fo2AUjIJRgA8AAFzhVsbv7zQOAAAAAElFTkSuQmCC","orcid":"https://orcid.org/0009-0009-8946-957X","institution":"Addis Ababa University","correspondingAuthor":true,"submittingAuthor":false,"prefix":"","firstName":"Surafiel","middleName":"Habib","lastName":"Asefa","suffix":""}],"badges":[],"createdAt":"2023-05-02 13:11:58","currentVersionCode":2,"declarations":{"humanSubjects":false,"vertebrateSubjects":false,"conflictsOfInterestStatement":true,"humanSubjectEthicalGuidelines":false,"humanSubjectConsent":false,"humanSubjectClinicalTrial":false,"humanSubjectCaseReport":false,"vertebrateSubjectEthicalGuidelines":false,"coiExplicitlySet":false},"doi":"10.21203/rs.3.rs-2885830/v2","doiUrl":"https://doi.org/10.21203/rs.3.rs-2885830/v2","draftVersion":[],"editorialEvents":[],"editorialNote":"","failedWorkflow":false,"files":[{"id":37918176,"identity":"6989c235-2221-4a4c-9170-dc2d407558b7","added_by":"auto","created_at":"2023-06-02 15:01:29","extension":"pdf","order_by":0,"title":"","display":"","copyAsset":false,"role":"manuscript-pdf","size":179655,"visible":true,"origin":"","legend":"","description":"","filename":"manuscript.pdf","url":"https://assets-eu.researchsquare.com/files/rs-2885830/v2/56e60ee4-6909-4657-90e0-c20a054f8805.pdf"}],"financialInterests":"\u003cp\u003eWe (the Authors) declare no competing interests;We hereby formally declare that we do not have any conflicts of interest that could potentially influence the outcome or interpretation of our research or any corresponding publications. This encompasses any personal or financial relationships that could potentially affect our findings in a biased manner.\u003c/p\u003e","formattedTitle":"\u003cp\u003e\u003cstrong\u003eA Review of Automatic Generation of Test Cases from\u003c/strong\u003e \u003cstrong\u003eUse Case Specification\u003c/strong\u003e\u003c/p\u003e","fulltext":[{"header":"1. Introduction","content":"\u003cp\u003eSoftware testing is an investigation conducted to provide stakeholders with information about the quality of the product or service under test. It involves executing a program or application with the intent of finding software bugs (errors or defects). Depending on the software methodology, testing can be implemented at any time in the development process. However, most of the test effort occurs after the requirements have been defined and the coding process has been completed. The testing stage is one of the most sensitive stages of software development and includes about 50% of the software development costs [\u003cspan citationid=\"CR1\" class=\"CitationRef\"\u003e1\u003c/span\u003e, \u003cspan citationid=\"CR2\" class=\"CitationRef\"\u003e2\u003c/span\u003e].\u003c/p\u003e \u003cp\u003eThe testing process includes test case generation, test case selection, test case execution, and test case evaluation. Among the activities, test case generation is the most intellectually demanding and critical, as it can have a strong impact on the effectiveness and efficiency of the whole testing process [\u003cspan citationid=\"CR4\" class=\"CitationRef\"\u003e3\u003c/span\u003e, \u003cspan citationid=\"CR5\" class=\"CitationRef\"\u003e4\u003c/span\u003e]. Thus, the main focus during software testing is to reduce the number of test cases into a manageable test set and to take calculated risks about what is and what isn't important to test [\u003cspan citationid=\"CR4\" class=\"CitationRef\"\u003e3\u003c/span\u003e].\u003c/p\u003e \u003cp\u003eOver the past two decades, significant research effort has been devoted to automatic test case generation to reduce the cost and effort involved in manual test case generation and validation. Automatic test generation not only reduces the cost and effort of testing but also ensures that all requirements are properly covered in test cases [\u003cspan citationid=\"CR6\" class=\"CitationRef\"\u003e5\u003c/span\u003e, \u003cspan citationid=\"CR7\" class=\"CitationRef\"\u003e6\u003c/span\u003e]. The majority of the automatic test case generation approaches presented require system specifications to be captured as UML behavioral models such as activity diagrams, state charts, and sequence diagrams [6,7]. Approaches that do not utilize behavioral modeling generate executable system test cases by exploiting the behavioral information implicitly described in use case specifications [\u003cspan citationid=\"CR8\" class=\"CitationRef\"\u003e8\u003c/span\u003e], a textual description of the functionality provided by the system that is widely used for communicating requirements among stakeholders and, facilitating communication with customers.\u003c/p\u003e \u003cp\u003eThis literature review (LR) seeks to explore the approaches used for the automatic generation of test cases from use case specification and the method of validation for each approach. The rest of the paper is organized as follows. Section \u003cspan refid=\"Sec2\" class=\"InternalRef\"\u003e2\u003c/span\u003e discusses the methodology for the literature review. Section \u003cspan refid=\"Sec3\" class=\"InternalRef\"\u003e3\u003c/span\u003e presents the results of the review. Section \u003cspan refid=\"Sec4\" class=\"InternalRef\"\u003e4\u003c/span\u003e presents a discussion of the results and Section \u003cspan refid=\"Sec5\" class=\"InternalRef\"\u003e5\u003c/span\u003e provides a conclusion to the LR and gives future work suggestions.\u003c/p\u003e"},{"header":"2. Methodology","content":"\u003cp\u003eThis study adopted an approach presented by Kitchenham [\u003cspan citationid=\"CR15\" class=\"CitationRef\"\u003e11\u003c/span\u003e] to conduct an SLR on the research topic. The process of the review consists of three phases: plan review, conduct review, and document review. In the first phase, the following research questions (RQs) are raised:\u003c/p\u003e \u003cp\u003eRQ1: What approaches have been introduced for automatically generating test cases from use case specification?\u003cdiv class=\"BlockQuote\"\u003e\u003cp\u003eRQ2: How have the approaches been validated?\u003c/p\u003e\u003c/div\u003e\u003c/p\u003e \u003cp\u003eFive different online databases were used in this study to search for the most relevant papers published between 2012 and 2023. These include IEEE Xplore, Springer Link, Science Direct, ResearchGate, and Google Scholar. For the search, a Boolean search string was used on the databases to find the answers to the research questions above. The search term was described as follows: ((automatic OR automated) AND (\u0026ldquo;test case generation\u0026rdquo; OR \u0026ldquo;generating test case\u0026rdquo; OR \u0026ldquo;generate test case\u0026rdquo;)) AND (\u0026ldquo;use case specification\u0026rdquo; OR \u0026ldquo;use case\u0026rdquo;).\u003c/p\u003e \u003cp\u003eThe inclusion criteria for research works were: the use of only English between the specified years in a recognized journal or conference and the exclusion criteria was if the generation approach is not based on use case specifications or is a manual approach. In the second phase, a paper selection process was conducted using title and abstract screening, free availability, duplicate removal, and full-text selection based on the inclusion and exclusion criteria. All papers that did not have any correlation with the specific domain were removed from the selected papers. Followed by a quality assessment (QA) process done to evaluate the selected papers\u0026rsquo; quality. The QA questions for this review are: Does the study include use case specification-based automated test case generation? Is the study capable of answering the research questions? Is the approach well described so that the author or others can validate it in later research? and Is the paper well/appropriately referenced? A scoring technique was adopted, where three possible scores can be given to an answer to each QA question: \u0026lsquo;\u0026lsquo;1\u0026rsquo;\u0026rsquo; for \u0026lsquo;\u0026lsquo;Yes\u0026rsquo;\u0026rsquo;, \u0026lsquo;\u0026lsquo;0.5\u0026rsquo;\u0026rsquo; for \u0026lsquo;\u0026lsquo;Partly\u0026rsquo;\u0026rsquo;, and \u0026lsquo;\u0026lsquo;0\u0026rsquo;\u0026rsquo; for \u0026lsquo;\u0026lsquo;No\u0026rsquo;\u0026rsquo;. Three relevant papers were selected for this study based on the sum of the total score for all four QA questions. From the chosen papers: authors\u0026rsquo; names, published year, paper\u0026rsquo;s title, objective, methodology, findings, and future works were extracted. The extracted data were synthesized to answer the research questions. Finally, in the third phase, the review was written.\u003c/p\u003e"},{"header":"3. Results","content":"\u003cp\u003e \u003cb\u003eRQ1: What approaches have been introduced for automatically generating test cases from use case specification?\u003c/b\u003e \u003c/p\u003e \u003cp\u003e[\u003cspan citationid=\"CR12\" class=\"CitationRef\"\u003e12\u003c/span\u003e] Presents Use Case Specification Language Test Case Generation (USLTG), an approach for automatically generating system test cases from precise use case specification. The use case specification is modeled with use case specification language (USL). The model automatically generates other software artifacts by making model transformations. USLTG implements a scenario generation algorithm to generate a set of constrained use case scenarios from a USL model. Test input data suites are generated for each scenario by solving Object Constraint Language (OCL) constraints in the corresponding use case scenario. The use case scenarios and test data suites are transformed into a Test Case Specification Language (TCSL) model that provides notations for reusable test cases that are understandable for non-technical stakeholders and precise enough for system testing.\u003c/p\u003e \u003cp\u003e[\u003cspan citationid=\"CR17\" class=\"CitationRef\"\u003e13\u003c/span\u003e] Proposes Use Case Modelling for System Tests Generation (UMTG) to automatically generate test cases by generating behavioral information and high-level operation descriptions from use cases. Requirement specifications are used to manually create a domain model as a UML class diagram which is checked for completeness to ensure the generation of correct and complete test input. UMTG further processes the use cases with the OCL constraints to generate a Use Case Test Model. An algorithm covers all the paths of the Use Case Test Model and generates a list of scenario and object Diagram pairs. UMTG searches for the attributes in the object diagram that appear in the constraints of the scenario to identify the whole set of input values for the test case. Using a mapping table, UMTG parses each high-level operation description and automatically generates executable test cases.\u003c/p\u003e \u003cp\u003e[\u003cspan citationid=\"CR18\" class=\"CitationRef\"\u003e14\u003c/span\u003e] Proposes an automatic approach to generate test cases from the use case description model. Based on [\u003cspan citationid=\"CR20\" class=\"CitationRef\"\u003e15\u003c/span\u003e] as a template to create a complete description of a use case by including all the relevant details which case will be used as input to the Algorithm of Control Flow Diagram (ACFD) to generate a control flow diagram. The control flow diagram is used as input for the Proposed Tool of Generating Test Paths (PTGTP) which generates test paths (test cases). The algorithm of Test Paths Optimization (ATPO) is executed to determine the test path achieving the maximum coverage and a genetic algorithm was used to optimize the test paths and evaluate the adequacy of generated test cases.\u003cdiv class=\"BlockQuote\"\u003e\u003cp\u003e\u003cb\u003eRQ2: How have the approaches been validated?\u003c/b\u003e\u003c/p\u003e\u003c/div\u003e\u003c/p\u003e \u003cp\u003eThe review finds that the methods used for the validation of approaches are experiment (33.3%) and comparative analysis (66.6%).\u003c/p\u003e \u003cp\u003eIn [\u003cspan citationid=\"CR12\" class=\"CitationRef\"\u003e12\u003c/span\u003e] an experiment was used to generate system test cases for a use case specification. The approach generated five test scenarios and eight test input data suites, which combined to form eight test cases.\u003c/p\u003e \u003cp\u003eIn a case study [\u003cspan citationid=\"CR17\" class=\"CitationRef\"\u003e13\u003c/span\u003e], UMTG is used to generate test cases from the use cases that correspond to the main functionalities of BodySense, a safety-critical automotive software developed by IEE. The results of the case study indicate that the approach is more effective in terms of time consumption and considers the approach feasible in an industrial context.\u003c/p\u003e \u003cp\u003eIn [\u003cspan citationid=\"CR18\" class=\"CitationRef\"\u003e14\u003c/span\u003e], a case study is used to demonstrate the feasibility and efficiency of the proposed approach. To evaluate the results of the case study, the authors compare the proposed approach with the approach in [\u003cspan citationid=\"CR21\" class=\"CitationRef\"\u003e16\u003c/span\u003e]. The paper finds that the proposed approach is more efficient in terms of time consumption and achieves 100% transition coverage.\u003c/p\u003e"},{"header":"4. Discussion","content":"\u003cp\u003eThe presence of ambiguity is one of the defining characteristics of natural language. A common cause of software project failure is inadequately produced specifications commonly written in plain English or other natural languages [\u003cspan citationid=\"CR23\" class=\"CitationRef\"\u003e17\u003c/span\u003e]. UMTG [\u003cspan citationid=\"CR17\" class=\"CitationRef\"\u003e13\u003c/span\u003e] uses Restricted Use Case Modeling (RUCM) which provides restriction rules and specific keywords constraining the use of natural language in use cases so that test cases cover every specification. The use of a modeling language reduces the ambiguities of natural language and the risk of project failure resulting from ambiguous software specifications. According to [\u003cspan citationid=\"CR24\" class=\"CitationRef\"\u003e18\u003c/span\u003e] modeling specifications can reduce the time and effort spent in test case generation, thus the use of models in the approach [\u003cspan citationid=\"CR17\" class=\"CitationRef\"\u003e13\u003c/span\u003e] also decreases the time and effort required by software engineers to add missing specifications into new or existing test cases. Likewise, the approach in [\u003cspan citationid=\"CR18\" class=\"CitationRef\"\u003e14\u003c/span\u003e], uses a template [\u003cspan citationid=\"CR20\" class=\"CitationRef\"\u003e15\u003c/span\u003e] to create a complete description of use cases by including all the relevant details to eliminate manual intervention to ensure the coverage of essential requirements by test cases.\u003c/p\u003e \u003cp\u003eUMTG [\u003cspan citationid=\"CR17\" class=\"CitationRef\"\u003e13\u003c/span\u003e] requires the involvement of software engineers for half of the ten steps in the approach: to elicit use cases, model the domain, refine the model, specify constraints and specify the mapping table. Manual intervention is required by the software engineer between nearly every automated step. On the contrary, the approaches proposed in [\u003cspan citationid=\"CR12\" class=\"CitationRef\"\u003e12\u003c/span\u003e, \u003cspan citationid=\"CR18\" class=\"CitationRef\"\u003e14\u003c/span\u003e] are fully automatic and do not require manual work. Nonetheless, UMTG [\u003cspan citationid=\"CR17\" class=\"CitationRef\"\u003e13\u003c/span\u003e] can generate test cases parallelly in a multicore platform, decreasing the performance time which would be increased due to manual intervention. Because the approach is developed for an industrial context, parallel execution is a practical solution to the increase in performance time caused by the required manual intervention [\u003cspan citationid=\"CR19\" class=\"CitationRef\"\u003e19\u003c/span\u003e] because of the tools used in industrial software development.\u003c/p\u003e \u003cp\u003eUMTG [\u003cspan citationid=\"CR17\" class=\"CitationRef\"\u003e13\u003c/span\u003e] focuses on the automation of functional system testing, which requires the generation of parameter values (additional input data) to guarantee the coverage of all the use case scenarios. The approach is an important contribution to software testing since one of the biggest challenges in test case generation is maintaining high levels of coverage to ensure that increasingly complex products meet quality standards [\u003cspan citationid=\"CR27\" class=\"CitationRef\"\u003e20\u003c/span\u003e]. USLTG [\u003cspan citationid=\"CR12\" class=\"CitationRef\"\u003e12\u003c/span\u003e] also takes this challenge into account by generating a set of test cases and providing the test agent with the best test case that achieves the highest transition coverage (100% coverage). [\u003cspan citationid=\"CR18\" class=\"CitationRef\"\u003e14\u003c/span\u003e] also reports that the generated test cases reached an activity path coverage criterion which is used for both loop testing and concurrency among activities of activity diagrams and that the validity of test paths was evaluated by Cyclomatic complexity, which indicates that the test cases generated from the proposed approach will be compatible with the complexity of the software that will represent the case of the research\u003c/p\u003e"},{"header":"5. Conclusion and Recommendation for Future work","content":"\u003cp\u003eIn order to minimize the time and effort involved in manual test case generation, automatic test case generation approaches have been developed. This paper presents a literature review of the works in use case specification-based automatic test case generation.\u003c/p\u003e \u003cp\u003eThe results of the review show that Use Case Specification Language Test Case Generation (USLTG), Use Case Modelling for System Tests Generation (UMTG), and an un-named test case generation approach have been introduced and validated. Although there are variations in the implementation, the steps in the identified approaches remain consistent: the use case specification is represented as a model, and the model is used to generate constrained use case scenarios which are then transformed into test cases. The approaches are validated by an experiment (33.3%) and comparative analysis (66.6%). In the approaches that used comparative analysis, a case study was conducted. In one approach, the case study applied use case specifications identical to those of a selected software system, while another utilized use case specifications similar to those of the approach it used for comparison. In addition, the review finds that the approaches have addressed one or more issues in software testing such as the considerable amount of time and effort required for test case generation, the risk of project failure due to ambiguous software specifications, and the coverage of all use case scenarios in test cases.\u003c/p\u003e \u003cp\u003eFrom the review, we have found that further studies are necessary to address the most significant issues in automated software testing. Future research could provide an approach to eliminate the manual intervention required to refine models in automated test case generation solutions. Such research could contribute to decreasing the time and cost of the software testing process.\u003c/p\u003e"},{"header":"References","content":"\u003cp\u003e[1]\u0026nbsp;J. Myers, C. Sandler,\u0026nbsp;and T. Badgett,\u0026nbsp;\u003cem\u003eT\u003c/em\u003e\u003cem\u003ehe\u0026nbsp;Art of\u0026nbsp;Software\u0026nbsp;Testing.\u0026nbsp;\u003c/em\u003eCanada.: John Wiley \u0026amp; Sons, Inc., 2012.\u003c/p\u003e\n\u003cp\u003e\u0026nbsp;\u003c/p\u003e\n\u003cp\u003e[2]\u0026nbsp;A. Mailewa, J. Herath,\u0026nbsp;and S. Herath,\u0026nbsp;\u0026ldquo;A survey of effective\u0026nbsp;and efficient software\u003c/p\u003e\n\u003cp\u003etesting,\u0026rdquo;\u0026nbsp;\u003cem\u003eThe\u0026nbsp;Midwest Instruction and Computing\u0026nbsp;Symposium\u0026nbsp;(MIC\u003c/em\u003eS), vol.\u0026nbsp;48, pp.\u0026nbsp;64-79, April\u003c/p\u003e\n\u003cp\u003e2015.\u003c/p\u003e\n\u003cp\u003e\u0026nbsp;\u003c/p\u003e\n\u003cp\u003e[3]\u0026nbsp;M. Alian, D. Suleiman, and A. Shaout, \u0026ldquo;Test\u0026nbsp;Case\u0026nbsp;Reduction Techniques\u0026nbsp;\u0026ndash; Survey,\u0026rdquo; \u003cem\u003eInternational\u0026nbsp;Journal of Advanced Computer Science\u0026nbsp;and Applications\u0026nbsp;(IJACSA),\u0026nbsp;\u003c/em\u003evol. 7, no. 5, pp. 264-275, 2016.\u003c/p\u003e\n\u003cp\u003e\u0026nbsp;\u003c/p\u003e\n\u003cp\u003e[4]\u0026nbsp;I. Rehman,\u0026nbsp;and S. Malik, \u0026ldquo;The\u0026nbsp;impact of test case\u0026nbsp;reduction and prioritization on software testing effectiveness,\u0026rdquo;\u0026nbsp;\u003cem\u003eInternational\u0026nbsp;Conference\u0026nbsp;on Emerging Technologies,\u0026nbsp;\u003c/em\u003evol. 9, pp. 416-421,\u0026nbsp;October\u0026nbsp;2009.\u003c/p\u003e\n\u003cp\u003e\u0026nbsp;\u003c/p\u003e\n\u003cp\u003e[5]\u0026nbsp;S.M. Mohi-Aldeen, S.\u0026nbsp;Deris, S. Mustafa, and\u0026nbsp;R. Mohamad, \u0026ldquo;Comparative Evaluation of Automatic Test Case\u0026nbsp;Generation Methods,\u0026rdquo;\u0026nbsp;\u003cem\u003eTechnology, Education, and Science\u0026nbsp;International Conference\u0026nbsp;(TESIC),\u0026nbsp;\u003c/em\u003evol.\u0026nbsp;2\u003cem\u003e,\u0026nbsp;\u003c/em\u003epp. 66-74, November\u0026nbsp;2013.\u003c/p\u003e\n\u003cp\u003e\u0026nbsp;\u003c/p\u003e\n\u003cp\u003e[6]\u0026nbsp;S. Anand, E.K. Burke,\u0026nbsp;T.Y. Chen, J. Clark, MB\u0026nbsp;Cohen,\u0026nbsp;W. Grieskamp,\u0026nbsp;M. Harman, M.J. Harrold, and P. McMinn,\u0026nbsp;\u0026ldquo;An orchestrated survey\u0026nbsp;of methodologies for automated software\u0026nbsp;test case\u0026nbsp;generation,\u0026rdquo;\u0026nbsp;\u003cem\u003eJ\u003c/em\u003e\u003cem\u003eournal of Systems and Software\u003c/em\u003e, vol.\u0026nbsp;86, no. 8, pp. 1978-2001,\u0026nbsp;August\u0026nbsp;2013.\u003c/p\u003e\n\u003cp\u003e\u0026nbsp;\u003c/p\u003e\n\u003cp\u003e[7]\u0026nbsp;R.K. Sahoo, D. Ojha,\u0026nbsp;D.P. Mohapatra, and M.R.\u0026nbsp;Patra, \u0026ldquo;Automated test case\u0026nbsp;generation and optimization: a comparative review,\u0026rdquo;\u0026nbsp;\u003cem\u003eInternational Journal of Computer Science\u0026nbsp;\u0026amp; Information Technology\u003c/em\u003e, vol.8, no. 5, pp.19-32, October\u0026nbsp;2016.\u003c/p\u003e\n\u003cp\u003e\u0026nbsp;\u003c/p\u003e\n\u003cp\u003e[8]\u0026nbsp;S.\u0026nbsp;Tiwari, and A. Gupta,\u0026nbsp;\u0026ldquo;A systematic\u0026nbsp;literature\u0026nbsp;review\u0026nbsp;of use\u0026nbsp;case\u0026nbsp;specifications research. Information and Software\u0026nbsp;Technology,\u0026rdquo;\u0026nbsp;Information and Software Technology, vol. 67, pp.128-\u003c/p\u003e\n\u003cp\u003e158, November 2015.\u003c/p\u003e\n\u003cp\u003e\u0026nbsp;\u003c/p\u003e\n\u003cp\u003e[9]\u0026nbsp;E. Shamsoddin-Motlagh, \u0026ldquo;A review of\u0026nbsp;automatic test cases generation\u003cem\u003e,\u0026rdquo;\u0026nbsp;International\u003c/em\u003e\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eJ\u003c/em\u003e\u003cem\u003eournal of Computer Application\u003c/em\u003es, vol. 57, no. 13, January 2012.\u003c/p\u003e\n\u003cp\u003e\u0026nbsp;\u003c/p\u003e\n\u003cp\u003e[10]\u0026nbsp;S. Kannan\u0026nbsp;and T. Pushparaj, \u0026ldquo;A\u0026nbsp;Survey on Automatic\u0026nbsp;Test Case\u0026nbsp;Generation,\u0026rdquo;\u0026nbsp;\u003cem\u003eJ\u003c/em\u003e\u003cem\u003eournal of\u003c/em\u003e\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eT\u003c/em\u003e\u003cem\u003erend in Research and Developmen\u003c/em\u003et, vol. 3, no. 6, pp. 717-720, December\u0026nbsp;2016.\u003c/p\u003e\n\u003cp\u003e\u0026nbsp;\u003c/p\u003e\n\u003cp\u003e[11]\u0026nbsp;B. Kitchenham, O.P.\u0026nbsp;Brereton,\u0026nbsp;D. Budgen, M. Turner, J. Bailey, and S.\u0026nbsp;Linkman, \u0026ldquo;Systematic\u0026nbsp;literature\u0026nbsp;reviews in software engineering\u0026ndash;a\u0026nbsp;systematic literature\u0026nbsp;review,\u0026rdquo; \u003cem\u003eInformation and software\u0026nbsp;technology\u003c/em\u003e, vol. 51, no.\u0026nbsp;5, pp.7-15, January 2009.\u003c/p\u003e\n\u003cp\u003e[12]\u0026nbsp;C.T. Hue, D.D.\u0026nbsp;Hanh,\u0026nbsp;and N.N. Binh, \u0026ldquo;A transformation-based method for\u0026nbsp;test case automatic\u0026nbsp;generation from use cases,\u003cem\u003e\u0026rdquo;\u0026nbsp;International Conference\u0026nbsp;on Knowledge\u0026nbsp;and Systems Engineering\u0026nbsp;(KSE)\u003c/em\u003e, vol.\u0026nbsp;10,\u0026nbsp;pp. 252-257, November 2018.\u003c/p\u003e\n\u003cp\u003e\u0026nbsp;\u003c/p\u003e\n\u003cp\u003e[13]\u0026nbsp;C. Wang,\u0026nbsp;F. Pastore,\u0026nbsp;A. Goknil\u0026nbsp;and L. C. Briand, \u0026quot;Automatic\u0026nbsp;Generation of\u0026nbsp;Acceptance Test Cases From Use\u0026nbsp;Case\u0026nbsp;Specifications: An NLP-Based Approach,\u0026quot;\u0026nbsp;\u003cem\u003eT\u003c/em\u003e\u003cem\u003eransactions on Software Engineering,\u0026nbsp;\u003c/em\u003evol. 48, no. 2, pp. 585-616,\u0026nbsp;February\u0026nbsp;2020.\u003c/p\u003e\n\u003cp\u003e\u0026nbsp;\u003c/p\u003e\n\u003cp\u003e[14]\u0026nbsp;T.A. Alrawashed, A.\u0026nbsp;Almomani,\u0026nbsp;A. Althunibat,\u0026nbsp;and A. Tamimi, \u0026ldquo;An\u0026nbsp;Automated Approach to Generate\u0026nbsp;Test Cases\u0026nbsp;From Use\u0026nbsp;Case\u0026nbsp;Description Model,\u0026rdquo;\u0026nbsp;\u003cem\u003eComputer Modeling in Engineering\u003c/em\u003e\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e\u0026amp; Sciences (CMES),\u0026nbsp;\u003c/em\u003evol.\u0026nbsp;119, no. 3, pp. 409\u0026ndash;425, June\u0026nbsp;2019.\u003c/p\u003e\n\u003cp\u003e\u0026nbsp;\u003c/p\u003e\n\u003cp\u003e[15]\u0026nbsp;A. Cockburn,\u0026nbsp;\u0026ldquo;Structuring use cases with goals,\u0026rdquo;\u0026nbsp;\u003cem\u003eJ\u003c/em\u003e\u003cem\u003eournal of object-oriented programming\u003c/em\u003e, vol. 10, no. 5, pp. 56-62, September 1997.\u003c/p\u003e\n\u003cp\u003e\u0026nbsp;\u003c/p\u003e\n\u003cp\u003e[16]\u0026nbsp;C. Nebut, F.\u0026nbsp;Fleurey,\u0026nbsp;L. Traon, and J.M. Jezequel,\u0026nbsp;\u0026ldquo;Automatic test generation: A use\u0026nbsp;case driven approach,\u0026rdquo;\u0026nbsp;\u003cem\u003eTransactions on Software\u0026nbsp;Engineering\u003c/em\u003e, vol. 32, no. 3, pp. 140-155, March\u003c/p\u003e\n\u003cp\u003e2006.\u003c/p\u003e\n\u003cp\u003e\u0026nbsp;\u003c/p\u003e\n\u003cp\u003e[17]\u0026nbsp;I.K. Raharjana,\u0026nbsp;D. Siahaan,\u0026nbsp;and C.\u0026nbsp;Fatichah,\u0026nbsp;\u0026ldquo;User stories\u0026nbsp;and natural language\u0026nbsp;processing: A systematic\u0026nbsp;literature\u0026nbsp;review,\u0026rdquo;\u0026nbsp;\u003cem\u003eIEEE Access\u003c/em\u003e, vol. 9,\u0026nbsp;pp. 53811-53826, April\u0026nbsp;2021.\u003c/p\u003e\n\u003cp\u003e\u0026nbsp;\u003c/p\u003e\n\u003cp\u003e[18]\u0026nbsp;M. Utting, A. Pretschner, and B. Legeard,\u0026nbsp;\u0026ldquo;A\u0026nbsp;taxonomy of\u0026nbsp;model‐based testing approaches,\u0026rdquo;\u0026nbsp;\u003cem\u003eSoftware\u0026nbsp;testing, verification, and reliability\u003c/em\u003e, vol. 22, no. 5, pp. 297-312, August\u003c/p\u003e\n\u003cp\u003e2012.\u003c/p\u003e\n\u003cp\u003e\u0026nbsp;\u003c/p\u003e\n\u003cp\u003e[19]\u0026nbsp;V. Vyatkin, \u0026ldquo;Software\u0026nbsp;engineering in industrial automation: State-of-the-art review,\u0026rdquo;\u0026nbsp;\u003cem\u003eIEEE Transactions on Industrial Informatics\u003c/em\u003e, vol. 9, no. 3,\u0026nbsp;pp. 1234-1249, April\u0026nbsp;2013.\u003c/p\u003e\n\u003cp\u003e\u0026nbsp;\u003c/p\u003e\n\u003cp\u003e[20]\u0026nbsp;G. Candea, and P. Godefroid, \u0026ldquo;Automated software\u0026nbsp;test generation: some challenges, solutions, and recent advances,\u0026rdquo;\u0026nbsp;\u003cem\u003eComputing and Software\u0026nbsp;Science\u003c/em\u003e, pp. 505-531, 2019.\u003c/p\u003e"}],"fulltextSource":"","fullText":"","funders":[],"hasAdminPriorityOnWorkflow":false,"hasManuscriptDocX":true,"hasOptedInToPreprint":true,"hasPassedJournalQc":"","hasAnyPriority":true,"hideJournal":true,"highlight":"","institution":"Addis Ababa University","isAcceptedByJournal":false,"isAuthorSuppliedPdf":false,"isDeskRejected":"","isHiddenFromSearch":false,"isInQc":false,"isInWorkflow":false,"isPdf":false,"isPdfUpToDate":true,"isWithdrawnOrRetracted":false,"journal":{"display":true,"email":"[email protected]","identity":"researchsquare","isNatureJournal":false,"hasQc":true,"allowDirectSubmit":true,"externalIdentity":"","sideBox":"","snPcode":"","submissionUrl":"/submission","title":"Research Square","twitterHandle":"researchsquare","acdcEnabled":true,"dfaEnabled":false,"editorialSystem":"","reportingPortfolio":"","inReviewEnabled":false,"inReviewRevisionsEnabled":true},"keywords":"Software Testing, Automatic Test Case Generation, Use-Case Specification","lastPublishedDoi":"10.21203/rs.3.rs-2885830/v2","lastPublishedDoiUrl":"https://doi.org/10.21203/rs.3.rs-2885830/v2","license":{"name":"CC BY 4.0","url":"https://creativecommons.org/licenses/by/4.0/"},"manuscriptAbstract":"\u003cp\u003eSoftware testing is an integral phase in the software development life cycle (SDLC). It refers to the process of verifying and evaluating the function of a software product. Among the testing activities, test case generation affects the effectiveness and efficiency of the testing process and requires a significant amount of effort and time. To reduce the effort and time involved in the manual test case generation process, significant research effort has been dedicated to the automatic generation of test cases. Although the majority of the proposed approaches are based on UML models, some works have presented a test case generation approach based on specifications. This literature review (LR) discusses use case specification-based automatic test case generation approaches and the methods used to validate them. Additionally, the review shows how the approaches differ in addressing some current issues in software testing.\u003c/p\u003e","manuscriptTitle":"A Review of Automatic Generation of Test Cases from Use Case Specification","msid":"","msnumber":"","nonDraftVersions":[{"code":2,"date":"2023-06-02 15:01:22","doi":"10.21203/rs.3.rs-2885830/v2","editorialEvents":[{"type":"communityComments","content":0}],"status":"published","journal":{"display":true,"email":"[email protected]","identity":"researchsquare","isNatureJournal":false,"hasQc":true,"allowDirectSubmit":true,"externalIdentity":"","sideBox":"","snPcode":"","submissionUrl":"/submission","title":"Research Square","twitterHandle":"researchsquare","acdcEnabled":true,"dfaEnabled":false,"editorialSystem":"","reportingPortfolio":"","inReviewEnabled":false,"inReviewRevisionsEnabled":true}},{"code":1,"date":"2023-05-03 19:55:20","doi":"10.21203/rs.3.rs-2885830/v1","editorialEvents":[{"type":"communityComments","content":0}],"status":"published","journal":{"display":true,"email":"[email protected]","identity":"researchsquare","isNatureJournal":false,"hasQc":true,"allowDirectSubmit":true,"externalIdentity":"","sideBox":"","snPcode":"","submissionUrl":"/submission","title":"Research Square","twitterHandle":"researchsquare","acdcEnabled":true,"dfaEnabled":false,"editorialSystem":"","reportingPortfolio":"","inReviewEnabled":false,"inReviewRevisionsEnabled":true}}],"origin":"","ownerIdentity":"1f3eb141-364d-4cc3-8bdd-7eda5090e0a0","owner":[],"postedDate":"June 2nd, 2023","published":true,"recentEditorialEvents":[],"rejectedJournal":[],"revision":"","amendment":"","status":"posted","subjectAreas":[{"id":21208375,"name":"Software Engineering"}],"tags":[],"updatedAt":"2023-05-03T19:55:20+00:00","versionOfRecord":[],"versionCreatedAt":"2023-06-02 15:01:22","video":"","vorDoi":"","vorDoiUrl":"","workflowStages":[]},"version":"v2","identity":"rs-2885830","journalConfig":"researchsquare"},"__N_SSP":true},"page":"/article/[identity]/[[...version]]","query":{"redirect":"/article/rs-2885830","identity":"rs-2885830","version":["v2"]},"buildId":"WrCJVZZCHTDjtuVLN7oU0","isFallback":false,"isExperimentalCompile":false,"dynamicIds":[84888],"gssp":true,"scriptLoader":[]}

Text is read by the "Ask this paper" AI Q&A widget below. Extraction quality varies by source — PMC NXML preserves structure cleanly, OA-HTML may include some navigation residue, and OA-PDF can have broken hyphenation. The publisher copy (via DOI) is the canonical version.

My notes (saved in your browser only)

Ask this paper AI returns verbatim quotes from the full text · source: preprint-html

Answers must be backed by verbatim quotes from this paper's full text. Hallucinated quotes are dropped automatically; if no verbatim passage answers the question, we say so. How this works

Citation neighborhood (no data yet)

We don't have any in-corpus citations linked to this paper yet. The paper's references may be in our DB but unresolved to ``paper_id`` (resolution happens at ingest when the cited DOI matches a row we already have). Run the cross-source citation reconcile pass to retry.

Source provenance

europepmc
last seen: 2026-05-19T01:45:01.086888+00:00
unpaywall
last seen: 2026-05-24T02:00:01.246996+00:00
License: CC-BY-4.0