Runtime exception detection in Java programs using symbolic execution

Most of the runtime failures of a software system can be revealed during test execution only, which has a very high cost. In Java programs, runtime failures are manifested as unhandled runtime exceptions. In this paper we present an approach and tool for detecting runtime exceptions in Java programs...

Teljes leírás

Elmentve itt :
Bibliográfiai részletek
Szerzők: Kádár István
Hegedűs Péter
Ferenc Rudolf
Testületi szerző: Symposium on Programming Languages and Software Tools (2013) (Szeged)
Dokumentumtípus: Cikk
Megjelent: 2014
Sorozat:Acta cybernetica 21 No. 3
Kulcsszavak:Számítástechnika
Tárgyszavak:
doi:10.14232/actacyb.21.3.2014.4

Online Access:http://acta.bibl.u-szeged.hu/34472
LEADER 01901nab a2200265 i 4500
001 acta34472
005 20220620085839.0
008 161017s2014 hu o 0|| eng d
022 |a 0324-721X 
024 7 |a 10.14232/actacyb.21.3.2014.4  |2 doi 
040 |a SZTE Egyetemi Kiadványok Repozitórium  |b hun 
041 |a eng 
100 1 |a Kádár István 
245 1 0 |a Runtime exception detection in Java programs using symbolic execution  |h [elektronikus dokumentum] /  |c  Kádár István 
260 |c 2014 
300 |a 331-352 
490 0 |a Acta cybernetica  |v 21 No. 3 
520 3 |a Most of the runtime failures of a software system can be revealed during test execution only, which has a very high cost. In Java programs, runtime failures are manifested as unhandled runtime exceptions. In this paper we present an approach and tool for detecting runtime exceptions in Java programs without having to execute tests on the software. We use the symbolic execution technique to implement the approach. By executing the methods of the program symbolically we can determine those execution branches that throw exceptions. Our algorithm is able to generate concrete test inputs also that cause the program to fail in runtime. We used the Symbolic PathFinder extension of the Java PathFinder as the symbolic execution engine. Besides small example codes we evaluated our algorithm on three open source systems: jEdit, ArgoUML, and log4j. We found multiple errors in the log4j system that were also reported as real bugs in its bug tracking system. 
650 4 |a Természettudományok 
650 4 |a Számítás- és információtudomány 
695 |a Számítástechnika 
700 0 1 |a Hegedűs Péter  |e aut 
700 0 1 |a Ferenc Rudolf  |e aut 
710 |a Symposium on Programming Languages and Software Tools (2013) (Szeged) 
856 4 0 |u http://acta.bibl.u-szeged.hu/34472/1/actacyb_21_3_2014_4.pdf  |z Dokumentum-elérés