Off-campus UNL users: To download campus access dissertations, please use the following link to log into our proxy server with your NU ID and password. When you are done browsing please remember to return to this page and log out.
Non-UNL users: Please talk to your librarian about requesting this dissertation through interlibrary loan.
SIMEXPLORER: A testing framework to detect elusive software faults
Modern computer software systems are prone to various classes of runtime faults due to their reliance on features such as concurrency and peripheral devices such as sensors. Testing remains a common method for uncovering faults in these systems. However, commonly used testing techniques that execute the program with test inputs and inspect program outputs to detect failures are often ineffective on these systems. In addition, existing testing techniques focus primarily on single applications, neglecting elusive faults that occur at the whole-system level due to complex system event interactions. ^ This research provides a framework, SIMEXPLORER , that allows engineers to effectively test for subtle and intermittent faults in modern software systems by providing them with greater observability and controllability. The testing framework first employs dynamic analysis techniques to observe system execution, identify program locations of interest, and report faults related to oracles. It next employs virtualization to achieve fine-grained controllability that exercises event interleavings that are likely to expose faults. The framework also supports testing of evolving software. The ultimate benefit of SIME XPLORER is its ability to test for broader classes of elusive faults that cannot be effectively detected by existing approaches. These faults include: (1) concurrency faults between applications and hardware interrupts; (2) concurrency faults caused by improper shared resource accesses among multiple processes, and software signals; (3) violations of expected worst-case interrupt latencies (WCILs); and (4) data races induced in evolving software. ^
Yu, Tingting, "SIMEXPLORER: A testing framework to detect elusive software faults" (2014). ETD collection for University of Nebraska - Lincoln. AAI3626337.