You are on page 1of 1

Intro to Automated Test Generation

24 August 2023 16:42

- Intro, outline, korat, problem, insight, test inputs, representing shapes, simple algorithm,
enumerating shapes, general case, lot of trees, overestimate, how many trees, another insight,
the technique, preccondition bin, enumerating - test, example, trees 1&2, experimental
results, strengths & weaknesses, weaknesses, feedback-directed RT, overview, randoop,
randoop algorithm, classifying a sequence, illegal sequences, redundant sequences, randoop
errors, randoop test generation, korat and randoop, bigger picture.

Units - smallest testable parts. Directed form of testing. Create concise suite for regression testing.
Previously: randomtesting - security, mobile and concurrency

Tools
Korat tool for systematic testing - linked DS
Randoop (feedback directed random testing) for javaprogram: classes and libraries.

Korat - deterministic test generator. Leverage pre and post conditions to automatically generate
tests. How?
Problem - Using subset that is concise to avoid illegal and redundant tests, and diverse for good
code coverage.
Insight - Small test case hypothesis - if there is any test that causes the program to fail, there is a
small such test e.g., list function works for lists length 0-3, then it probably works for all lists.
To generate all test inputs upto a small size, Korat uses knowledge of the input types. i.e. A binary
tree object have root fields with two children pointing to node or null object.

You might also like