[论文解读] Reliable Mining of Automatically Generated Test Cases from Software Requirements Specification (SRS)
本文提出一种方法,通过分类功能性和非功能性需求、将其转换为状态图,并基于规划的状态转移自动生成可靠的测试用例,从而实现从软件需求规格说明书(SRS)中自动提取测试用例。此外,还应用数据挖掘技术以减小测试套件规模,提升测试用例的可维护性与知识提取效率。
Writing requirements is a two-way process. In this paper we use to classify Functional Requirements (FR) and Non Functional Requirements (NFR) statements from Software Requirements Specification (SRS) documents. This is systematically transformed into state charts considering all relevant information. The current paper outlines how test cases can be automatically generated from these state charts. The application of the states yields the different test cases as solutions to a planning problem. The test cases can be used for automated or manual software testing on system level. And also the paper presents a method for reduction of test suite by using mining methods thereby facilitating the mining and knowledge extraction from test cases.
研究动机与目标
- 为应对手动生成测试用例的挑战,通过自动化方式从SRS文档中推导测试用例。
- 系统性地对SRS文档中的功能性和非功能性需求进行分类,以支持测试用例生成。
- 将基于需求的状态信息转换为形式化状态图,以实现系统化的测试用例推导。
- 应用数据挖掘技术减小测试套件规模,以提升可维护性与知识提取效率。
- 通过可靠、机器生成的测试用例,支持自动化与手动的系统级测试。
提出的方法
- 使用结构化方法将SRS中的需求分类为功能需求(FR)与非功能需求(NFR)。
- 将分类后的需求转换为状态图,基于所有相关信息建模系统行为。
- 将状态转换视为规划问题的解,以生成测试用例,确保覆盖所有系统状态。
- 应用数据挖掘方法识别并消除冗余或不相关的测试用例,从而减小整体测试套件规模。
- 使用生成的测试用例支持自动化与手动的系统级软件测试。
- 利用挖掘过程从测试用例中提取可重用知识,提升长期测试维护效率。
实验结果
研究问题
- RQ1如何系统性地对SRS文档中的功能性和非功能性需求进行分类,以支持测试用例生成?
- RQ2何种形式化表示(如状态图)可有效建模从SRS中提取的系统行为,以支持测试用例挖掘?
- RQ3如何利用模型中的状态转换自动生成全面的测试用例?
- RQ4可应用哪些数据挖掘技术在不损害覆盖范围的前提下减小测试套件规模?
- RQ5生成的测试用例如何支持自动化与手动的系统级测试?
主要发现
- 该方法成功将SRS文档转换为状态图,准确反映基于需求分类的系统行为。
- 通过将状态转换建模为规划问题的解,自动生成测试用例,确保系统化覆盖。
- 应用数据挖掘技术显著减小了测试套件规模,提升了可维护性与效率。
- 生成的测试用例适用于系统级的自动化与手动测试。
- 挖掘过程有效实现了从测试用例中提取知识,支持长期测试演化。
- 该方法提升了从SRS推导出的测试用例的可靠性与可重用性,显著减少了测试设计中的手动工作量。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。