Prioritizing Runtime Verification Violations

Prioritizing Runtime Verification Violations
复制标题

DOI:
10.1109/icst46399.2020.00038
复制
发表时间:
2020-10
期刊:
2020 IEEE 13th International Conference on Software Testing, Validation and Verification (ICST)
影响因子:
--
通讯作者:
Breno Miranda;Igor Lima;Owolabi Legunsen;Marcelo d’Amorim
Breno Miranda;Igor Lima;Owolabi Legunsen;Marcelo d’Amorim
中科院分区:
其他
文献类型:
--
作者:
Breno Miranda;Igor Lima;Owolabi Legunsen;Marcelo d’Amorim

文献摘要

被引文献

相似文献

运行时验证(RV)可以通过在测试过程中使用RV时正式指定的属性来帮助您找到软件错误。确定财产违规的可能性是减少繁琐且耗时的手动检查的可能性。我们目前是RVPRIO,这是优先级排序的第一种自动化方法RV违反了RVPRIO的可能性。理论上最佳优先级,将所有真实错误排在排名列表的顶部,(2)88.1%的真实错误位于RVPRIO排名的前25%违规行为;当我们将其应用于新的未标记的违规行为时,RVPRIO的32.7%也有效在线公开可用。
Runtime Verification (RV) can help find software bugs by monitoring formally specified properties during testing. A key problem when using RV during testing is how to reduce the manual inspection effort for checking whether property violations are true bugs. To date, there was no automated approach for determining the likelihood that property violations were true bugs to reduce tedious and time-consuming manual inspection.We present RVPRIO, the first automated approach for prioritizing RV violations in order of likelihood of being true bugs. RVPRIO uses machine learning classifiers to prioritize violations. For training, we used a labeled dataset of 1,170 violations from 110 projects. On that dataset, (1) RVPRIO reached 90% of the effectiveness of a theoretically optimal prioritizer that ranks all true bugs at the top of the ranked list, and (2) 88.1% of true bugs were in the top 25% of RVPRIO-ranked violations; 32.7% of true bugs were in the top 10%. RVPRIO was also effective when we applied it to new unlabeled violations, from which we found previously unknown bugs—29 bugs in 7 projects and two bugs in two properties. Our dataset is publicly available online.