Title: Applying Math and CS for Systematic Software Testing
Abstract: How can we
automatically generate objects that satisfy a given set of properties
(within a bounded size)? This question arises in various domains
such as combinatorics (e.g., enumerate permutation of certain kind and
size) or software testing (e.g., systematically generate tests). The
standard approach to generating test suites, manual generation of the
test inputs in the suite, is tedious and error-prone, especially for
code that takes complex test inputs. This talk presents an approach
that automates generation of test suites using test abstractions.
Conceptually, test abstractions provide a high-level description of
desired test suites; testers need not manually write large suites of
individual tests but instead write test abstractions from which tools
automatically generate individual tests. This approach has helped
testers in both academia and industry to discover numerous bugs.
Short Bio: Darko Marinov is a
Professor in the Department of Computer Science at the University of
Illinois at Urbana-Champaign. His main research interests are in
Software Engineering, especially improving software quality using
software testing. He has a lot of fun finding and preventing
software bugs. His work has been supported by Google, IBM, Intel,
Microsoft, NSF, Qualcomm, and Samsung. More info is on his web
page: http://mir.cs.illinois.edu/marinov