Software Energy Consumption(SEC) is gaining more and more attention. In this paper, we tackle the problem of hinting developers about the SEC of their programs in the context of software developments based on Continuous Integration(CI). In this study, we investigate if the CI can leverage developers' tests to perform a new class of tests: the energy regression testing. Energy regression is similar to performance regression but focused on the energy consumption of the program instead of standard performance indicators, like execution time or memory consumption. We propose to perform an exploratory study of the usage of developers' tests for energy regression testing. We propose to first investigate if developers' tests can be used to obtain stable SEC indicators. Then, to consider if comparing the SEC of developers' tests between two versions can accurately spot energy regressions introduced by automated program mutations. Finally, to assess if it can successfully pinpoint the source code lines guilty of energy regressions. Our study will pave the way for automated SEC regression tools that can be readily deployed inside an existing CI infrastructure to raise awareness of SEC issues among practitioners.
翻译:软件能源消耗( SEC) 越来越受到越来越多的关注 。 在本文中, 我们处理在基于持续整合( CI) 的软件开发过程中, 向开发商暗示 SEC 程序的问题 。 在这项研究中, 我们调查CI 是否可以利用开发商的测试来进行一个新的测试: 能源回归测试。 能源回归与性能回归相似, 重点是程序能源消耗, 而不是标准业绩指标, 比如执行时间或记忆消耗。 我们提议对开发商的能源回归测试进行探索性研究。 我们提议首先调查开发商的测试能否用于获得稳定的 SEC 指标。 然后, 我们考虑将开发商的测试在两个版本之间进行比较, 能否准确地发现自动程序突变带来的能源回归。 最后, 评估它是否能够成功地确定能源回归的源代码线。 我们的研究将为SEC 自动回归工具铺平道路, 这些工具可以在现有的CI 基础设施内随时部署, 以提高从业人员对 SEC 问题的认识。