中文

从用例规约自动生成验收测试用例:一种基于 NLP 的方法

软件工程 2020-05-19 v2

摘要

验收测试是一种验证活动,用于确保软件系统符合其功能需求。在安全关键系统中,由于软件标准的强制要求,它起着至关重要的作用。测试工程师需要从需求中识别所有具有代表性的测试执行场景,确定触发这些场景的运行时条件,并最终提供满足这些条件的输入数据。鉴于需求规约通常规模庞大且常以自然语言给出,验收测试用例的生成往往代价高昂且容易出错。在本文中,我们提出 UMTG,一种从自然语言的需求规约生成可执行的系统级验收测试用例的方法,旨在减少生成测试用例所需的手工工作量并确保需求覆盖。更具体地,UMTG 基于用例规约和被测系统的领域模型自动生成验收测试用例,这些在产品开发环境中通常都会产生。与现有方法不同,它不对用例规约的表达能力施加强限制。我们依赖自然语言处理的最新进展来自动识别测试场景,并生成捕获触发场景执行条件的形式化约束,从而实现测试数据的生成。在两个工业案例研究中,UMTG 自动且正确地将 95% 的用例规约步骤转化为测试数据生成所需的形式化约束;此外,它生成的测试用例不仅覆盖了专家手动实现的所有测试场景,还覆盖了一些先前未考虑的关键场景。

关键词

引用

@article{arxiv.1907.08490,
  title  = {Automatic Generation of Acceptance Test Cases from Use Case Specifications: an NLP-based Approach},
  author = {Chunhui Wang and Fabrizio Pastore and Arda Goknil and Lionel C. Briand},
  journal= {arXiv preprint arXiv:1907.08490},
  year   = {2020}
}