In recent years, software engineers have explored ways to assist quantum software programmers. Our goal in this paper is to continue this exploration and see if quantum software programmers deal with some problems plaguing classical programs. Specifically, we examine whether intermittently failing tests, i.e., flaky tests, affect quantum software development. To explore flakiness, we conduct a preliminary analysis of 14 quantum software repositories. Then, we identify flaky tests and categorize their causes and methods of fixing them. We found flaky tests in 12 out of 14 quantum software repositories. In these 12 repositories, the lower boundary of the percentage of flaky tests ranges between 0.26% and 1.85% per repository. We identified 38 distinct flaky tests with 10 groups of causes and 7 common solutions. Further, we notice that quantum programmers are not using some of the recent flaky test countermeasures developed by software engineers. This work may interest practitioners, as it provides useful insight into the resolution of flaky tests in quantum programs. Researchers may also find the paper helpful as it offers quantitative data on flaky tests in quantum software and points to new research opportunities.
翻译:近年来,软件工程师探索了帮助量子软件程序员的方法。 我们的本文件的目标是继续这一探索,看看量子软件程序员是否处理一些困扰古典程序的问题。 具体地说, 我们检查一下间歇性失灵测试, 即片面测试, 是否影响量子软件开发。 为了探索不成熟性, 我们对14个量子软件库进行了初步分析。 然后, 我们查明了片面测试, 并分类了其原因和修补方法。 我们在14个量子软件库中的12个中发现了烟雾测试。 在这12个库中, 弹片测试的百分比在0.26%至1.85%之间。 我们确定了38个不同的片面测试, 其中有10组原因和7个共同解决方案。 此外, 我们注意到量子程序员没有使用软件工程师最近开发的一些片子测试反措施。 这项工作可能会引起从业人员的兴趣, 因为它有助于深入了解量子软件试验的分辨率。 研究人员还可能发现文件有用, 因为它提供了量子软件中微量子测试的定量数据, 并指出了新的研究机会。