We use cookies to improve your experience with our site.
Ze-Lin Zhao, Di Huang, Xiao-Xing Ma. TOAST: Automated Testing of Object Transformers in Dynamic Software Updates[J]. Journal of Computer Science and Technology, 2022, 37(1): 50-66. DOI: 10.1007/s11390-021-1693-1
Citation: Ze-Lin Zhao, Di Huang, Xiao-Xing Ma. TOAST: Automated Testing of Object Transformers in Dynamic Software Updates[J]. Journal of Computer Science and Technology, 2022, 37(1): 50-66. DOI: 10.1007/s11390-021-1693-1

TOAST: Automated Testing of Object Transformers in Dynamic Software Updates

  • Dynamic software update (DSU) patches programs on the fly.It often involves the critical task of object transformation thatconverts live objects of the old-version program totheir semantically consistent counterparts under the new-version program.This task is accomplished by invoking an object transformer on each stale object.However, a defective transformer failing to maintain consistency would cause errors or even crash the program.We propose TOAST (Test Object trAnSformaTion), an automated approach to detecting potential inconsistency caused by object transformers.TOAST first analyzes an update to identify multiple target methodsand then adopts a fuzzer with specially designed inconsistency guidance to randomly generate object states to drive two versions of a target method.This creates two corresponding execution traces and a pair of old and new objects.TOAST finally performs object transformation to create a transformed objectand detects inconsistency between it and the corresponding new object produced from scratch by the new program.Moreover, TOAST checks behavior inconsistency by comparing the return variables and exceptions of the two executions.Experimental evaluation on 130 updates with default transformers shows that TOAST is promising: it got 96.0% precision and 85.7% recall in state inconsistency detection, and 81.4% precision and 94.6% recall inbehavior inconsistency detection.The inconsistency guidance improved the fuzzing efficiency by 14.1% for state inconsistency detection and 40.5% for behavior inconsistency detection.
  • loading

Catalog

    /

    DownLoad:  Full-Size Img  PowerPoint
    Return
    Return