Tedsuto: A General Framework for Testing Dynamic Software Updates
In: 2016 IEEE International Conference on Software Testing, Verification and Validation (ICST), 2016-04-01
Online
unknown
Zugriff:
Dynamic software updating (DSU) is a technique for patching running programs, to fix bugs or add new features. DSU avoids the downtime of stop-and-restart updates, but creates new risks -- an incorrect or ill-timed dynamic update could result in a crash or misbehavior, defeating the whole purpose of DSU. To reduce such risks, dynamic updates should be carefully tested before they are deployed. This paper presents Tedsuto, a general testing framework for DSU, along with a concrete implementation of it for Rubah, a state-of-the-art Java-based DSU system. Tedsuto uses system-level tests developed for the old and new versions of the updateable software, and systematically tests whether a dynamic update might result in a test failure. Very often this process is fully automated, while in some cases (e.g., to test new-version functionality) some manual annotations are required. To evaluate Tedsuto's efficacy, we applied it to dynamic updates previously developed (and tested in an ad hoc manner) for the H2 SQL database server and the CrossFTP server -- two real-world, multithreaded systems. We used three large test suites, totalling 446 tests, and we found a variety of update-related bugs quickly, and at low cost.
Titel: |
Tedsuto: A General Framework for Testing Dynamic Software Updates
|
---|---|
Autor/in / Beteiligte Person: | Pina, Luís ; Hicks, Michael |
Link: | |
Zeitschrift: | 2016 IEEE International Conference on Software Testing, Verification and Validation (ICST), 2016-04-01 |
Veröffentlichung: | IEEE, 2016 |
Medientyp: | unknown |
DOI: | 10.1109/icst.2016.27 |
Schlagwort: |
|
Sonstiges: |
|