一种将 JUnit 断言自动转换为英文的细粒度方法
软件工程
2021-03-11 v1
摘要
将源代码或单元测试代码转换为英文已被证明能够改善软件和测试的可维护性、可理解性与可分析性。代码摘要器通过静态分析和 NLP 技术识别源代码或测试中的重要语句,并将其转换为易于理解的英文句子。然而,当前的测试摘要方法仅处理了 JUnit assert API(测试用例的关键组成部分)所允许的变体与定制中的一部分,这可能影响转换的准确性。在本文中,我们展示了旨在改进 JUnit 测试摘要的工作,提出了一种将总计 45 种独特 JUnit 断言转换为英文的详细流程,其中包括 37 种此前未处理的 assertThat 方法变体。该流程已被实现并作为 AssertConvert 工具发布。初步评估表明,该工具生成的英文转换能够准确表示多种断言语句,可用于代码摘要或其他 NLP 分析。
引用
@article{arxiv.1811.05005,
title = {A Fine-Grained Approach for Automated Conversion of JUnit Assertions to English},
author = {Danielle Gonzalez and Suzanne Prentice and Mehdi Mirakhorli},
journal= {arXiv preprint arXiv:1811.05005},
year = {2021}
}
备注
In Proceedings of the 4th ACM SIGSOFT International Workshop on NLP for Software Engineering (NL4SE 18), November 4, 2018, Lake Buena Vista, FL, USA. ACM, New York, NY, USA, 4 pages