Hermes: assessment and creation of effective test corpora

Michael Reif, Michael Eichberg, Ben Hermann, M. Mezini
{"title":"Hermes: assessment and creation of effective test corpora","authors":"Michael Reif, Michael Eichberg, Ben Hermann, M. Mezini","doi":"10.1145/3088515.3088523","DOIUrl":null,"url":null,"abstract":"An integral part of developing a new analysis is to validate the correctness of its implementation and to demonstrate its usefulness when applied to real-world code. As a foundation for addressing both challenges developers typically use custom or well-established collections of Java projects. The hope is that the collected projects are representative for the analysis’ target domain and therefore ensure a sound evaluation. But, without proper means to understand how and to which degree the features relevant to an analysis are found in the projects, the evaluation necessarily remains inconclusive. Additionally, it is likely that the collection contains many projects which are – w.r.t. the developed analysis – basically identical and therefore do not help the overall evaluation/testing of the analysis, but still cost evaluation time. To overcome these limitations we propose Hermes, a framework that enables the systematic assessment of given corpora and the creation of new corpora of Java projects. To show the usefulness of Hermes, we used it to comprehend the nature of the projects belonging to the Qualitas Corpus (QC) and then used it to compute a minimal subset of all QC projects useful for generic data- and control-flow analyses. This subset enables effective and efficient integration test suites.","PeriodicalId":368102,"journal":{"name":"Proceedings of the 6th ACM SIGPLAN International Workshop on State Of the Art in Program Analysis","volume":"28 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2017-06-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"11","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 6th ACM SIGPLAN International Workshop on State Of the Art in Program Analysis","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3088515.3088523","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 11

Abstract

An integral part of developing a new analysis is to validate the correctness of its implementation and to demonstrate its usefulness when applied to real-world code. As a foundation for addressing both challenges developers typically use custom or well-established collections of Java projects. The hope is that the collected projects are representative for the analysis’ target domain and therefore ensure a sound evaluation. But, without proper means to understand how and to which degree the features relevant to an analysis are found in the projects, the evaluation necessarily remains inconclusive. Additionally, it is likely that the collection contains many projects which are – w.r.t. the developed analysis – basically identical and therefore do not help the overall evaluation/testing of the analysis, but still cost evaluation time. To overcome these limitations we propose Hermes, a framework that enables the systematic assessment of given corpora and the creation of new corpora of Java projects. To show the usefulness of Hermes, we used it to comprehend the nature of the projects belonging to the Qualitas Corpus (QC) and then used it to compute a minimal subset of all QC projects useful for generic data- and control-flow analyses. This subset enables effective and efficient integration test suites.
Hermes:有效测试语料库的评估与创建
开发新分析的一个组成部分是验证其实现的正确性,并演示其在应用于实际代码时的有用性。作为解决这两个挑战的基础,开发人员通常使用自定义或完善的Java项目集合。希望收集到的项目能够代表分析的目标领域,从而确保可靠的评估。但是,如果没有适当的方法来理解与分析相关的特征如何以及在多大程度上在项目中被发现,评估必然是不确定的。此外,很可能这个集合包含了许多项目,这些项目与开发的分析基本相同,因此对分析的整体评估/测试没有帮助,但仍然花费了评估时间。为了克服这些限制,我们提出了Hermes,这是一个框架,可以系统地评估给定的语料库和创建Java项目的新语料库。为了显示Hermes的有用性,我们使用它来理解属于Qualitas语料库(QC)的项目的性质,然后使用它来计算所有QC项目的最小子集,这些项目对通用数据和控制流分析有用。这个子集支持有效和高效的集成测试套件。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信