RobusTest: A Framework for Automated Testing of Software Robustness
Paper in proceeding, 2011

Robustness of a software system is defined as the degree to which the system can behave ordinarily and in conformance with the requirements in extraordinary situations. By increasing the robustness many failures which decrease the quality of the system can be avoided or masked. When it comes to specifying, testing and assessing software robustness in an efficient manner the methods and techniques are not mature yet. This paper presents RobusTest, a framework for testing robustness properties of a system with currently focus on timing issues. The expected robust behavior of the system is formulated as properties. The properties are then used to automatically generate robustness test cases and assess the results. An implementation of RobusTest in Java is presented here together with results from testing different, open-source implementations of the XMPP instant messaging protocol. By executing 400 test cases that were automatically generated from properties on two such implementations we found 11 critical failures and 15 nonconformance problems as compared to the XMPP specification.

property based testing

testing

Robustness

real time systems

temporal property

timing

Author

Ali Shahrokni

Chalmers, Computer Science and Engineering (Chalmers), Software Engineering (Chalmers)

Robert Feldt

Chalmers, Computer Science and Engineering (Chalmers), Software Engineering (Chalmers)

APSEC 2011

1530-1362 (ISSN)

171-178
9780769546094 (ISBN)

Areas of Advance

Information and Communication Technology

Subject Categories

Software Engineering

DOI

10.1109/APSEC.2011.58

ISBN

9780769546094

More information

Created

10/6/2017