SE465 Study Guide - Midterm Guide: Unreachable Code, Code Coverage, Fault Coverage

104 views9 pages

Document Summary

Cs 465 software testing, quality assurance, and. There are many things which we must be worried about when deisgning stable software. particular, we will concern ourselves primarily with. In: race conditions, segmentation faults, crashes, in nite loops, wrong output, unwanted side-e ects, wrong api, incompatible submodules, bad system behaviour, bad security, wrong specs, wrong output, non-functional properties, memory leaks, bad performance, regressions. There are many steps we can take to x these issues: in-house testing, validatoin suires for plugins, code review, better design, fewer features, defensive programming, especially for plugins. Software never completely works, so our goal should be to make it good enough . Generally, we use disclaimers, patches, defensive programming, and backups of user data. We can test our systems by: compiling it, running it on single input, running it on many inputs, running it on representative inputs, running it on all inputs (statically, integration testing, regression testing, non-function testing.