{"title":"RTCM: a natural language based, automated, and practical test case generation framework","authors":"T. Yue, Shaukat Ali, Man Zhang","doi":"10.1145/2771783.2771799","DOIUrl":null,"url":null,"abstract":"Based on our experience of collaborating with industry, we observed that test case generation usually relies on test case specifications (TCSs), commonly written in natural language, specifying test cases of a System Under Test at a high level of abstraction. In practice, TCSs are commonly used by test engineers as reference documents to perform these activities: 1) Manually executing test cases in TCSs; 2) Manually coding test cases in a test scripting language for automated test case execution. In the latter case, the gap between TCSs and executable test cases has to be filled by test engineers, requiring a significant amount of coding effort and domain knowledge. Motivated by the above observations from the industry, we first propose, in this paper, a TCS language, named as Restricted Test Case Modeling (RTCM), which is based on natural language and composed of an easy-to-use template, a set of restriction rules and keywords. Second, we propose a test case generation tool (aToucan4Test), which takes TCSs in RTCM as input and generates either manual test cases or automatically executable test cases, based on various coverage criteria defined on RTCM. To assess the applicability of RTCM, we manually modeled two industrial case studies and examined 30 automatically generated TCSs. To evaluate aToucan4Test, we modeled three subsystems of a Video Conferencing System developed by Cisco Systems, Norway and automatically generated executable test cases. These test cases were successfully executed on two commercial software versions. In the paper, we also discuss our experience of applying RTCM and aToucan4Test in an industrial context and compare our approach with other model-based testing methodologies.","PeriodicalId":264859,"journal":{"name":"Proceedings of the 2015 International Symposium on Software Testing and Analysis","volume":"30 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2015-07-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"33","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 2015 International Symposium on Software Testing and Analysis","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2771783.2771799","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 33
Abstract
Based on our experience of collaborating with industry, we observed that test case generation usually relies on test case specifications (TCSs), commonly written in natural language, specifying test cases of a System Under Test at a high level of abstraction. In practice, TCSs are commonly used by test engineers as reference documents to perform these activities: 1) Manually executing test cases in TCSs; 2) Manually coding test cases in a test scripting language for automated test case execution. In the latter case, the gap between TCSs and executable test cases has to be filled by test engineers, requiring a significant amount of coding effort and domain knowledge. Motivated by the above observations from the industry, we first propose, in this paper, a TCS language, named as Restricted Test Case Modeling (RTCM), which is based on natural language and composed of an easy-to-use template, a set of restriction rules and keywords. Second, we propose a test case generation tool (aToucan4Test), which takes TCSs in RTCM as input and generates either manual test cases or automatically executable test cases, based on various coverage criteria defined on RTCM. To assess the applicability of RTCM, we manually modeled two industrial case studies and examined 30 automatically generated TCSs. To evaluate aToucan4Test, we modeled three subsystems of a Video Conferencing System developed by Cisco Systems, Norway and automatically generated executable test cases. These test cases were successfully executed on two commercial software versions. In the paper, we also discuss our experience of applying RTCM and aToucan4Test in an industrial context and compare our approach with other model-based testing methodologies.
根据我们与工业界合作的经验,我们观察到测试用例生成通常依赖于测试用例说明(TCSs),通常用自然语言编写,在高层次抽象上指定System Under test的测试用例。在实践中,测试工程师通常将TCSs用作执行以下活动的参考文档:1)在TCSs中手动执行测试用例;2)用测试脚本语言手动编写测试用例,以便自动执行测试用例。在后一种情况下,TCSs和可执行测试用例之间的差距必须由测试工程师来填补,这需要大量的编码工作和领域知识。基于上述业界观察,本文首先提出了一种基于自然语言,由一个易于使用的模板、一组约束规则和关键字组成的TCS语言,命名为受限测试用例建模(Restricted Test Case Modeling, RTCM)。其次,我们提出了一个测试用例生成工具(aToucan4Test),它将RTCM中的TCSs作为输入,并根据RTCM上定义的各种覆盖标准生成手动测试用例或自动可执行的测试用例。为了评估RTCM的适用性,我们手工建模了两个工业案例研究,并检查了30个自动生成的tcs。为了评估aToucan4Test,我们对由Cisco Systems, Norway开发的视频会议系统的三个子系统进行建模,并自动生成可执行的测试用例。这些测试用例成功地在两个商业软件版本上执行。在本文中,我们还讨论了在工业环境中应用RTCM和aToucan4Test的经验,并将我们的方法与其他基于模型的测试方法进行了比较。