首页> 外文期刊>Empirical Software Engineering >Test them all, is it worth it? Assessing configuration sampling on the JHipster Web development stack
【24h】

Test them all, is it worth it? Assessing configuration sampling on the JHipster Web development stack

机译:全部测试一下,值得吗?在JHipster Web开发堆栈上评估配置样本

获取原文
获取原文并翻译 | 示例
           

摘要

Many approaches for testing configurable software systems start from the same assumption: it is impossible to test all configurations. This motivated the definition of variability-aware abstractions and sampling techniques to cope with large configuration spaces. Yet, there is no theoretical barrier that prevents the exhaustive testing of all configurations by simply enumerating them if the effort required to do so remains acceptable. Not only this: we believe there is a lot to be learned by systematically and exhaustively testing a configurable system. In this case study, we report on the first ever endeavour to test all possible configurations of the industry-strength, open source configurable software system JHipster, a popular code generator for web applications. We built a testing scaffold for the 26,000+ configurations of JHipster using a cluster of 80 machines during 4 nights for a total of 4,376 hours (182 days) CPU time. We find that 35.70% configurations fail and we identify the feature interactions that cause the errors. We show that sampling strategies (like dissimilarity and 2-wise): (1) are more effective to find faults than the 12 default configurations used in the JHipster continuous integration; (2) can be too costly and exceed the available testing budget. We cross this quantitative analysis with the qualitative assessment of JHipster's lead developers.
机译:测试可配置软件系统的许多方法都基于相同的假设:不可能测试所有配置。这激发了对可变性感知的抽象和采样技术的定义,以应对大型配置空间。但是,没有理论上的障碍可以阻止通过简单枚举所有配置(如果这样做所需的努力仍然可以接受)进行详尽的测试。不仅如此:我们相信,通过系统地,详尽地测试可配置系统可以学到很多东西。在此案例研究中,我们报告了有史以来第一次尝试测试行业实力强大的开源可配置软件系统JHipster的所有可能配置,JHipster是Web应用程序的流行代码生成器。我们在4个晚上使用80台计算机的集群为26,000多个JHipster配置构建了一个测试支架,总共花费了4,376小时(182天)的CPU时间。我们发现35.70%的配置失败,并且我们识别了导致错误的功能交互。我们展示了采样策略(如相异性和2维):(1)比JHipster连续集成中使用的12种默认配置更有效地发现故障; (2)可能会过于昂贵,并且超出可用的测试预算。我们将这种定量分析与对JHipster主要开发人员的定性评估相结合。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号