Write these up and submit them to Canvas, the day before the lecture. =========================================================================== Please include in your write up a summary/commentary of the paper: * DART: Directed Automated Random Testing =========================================================================== 1. A test case consists of two parts: test input(s) and a test oracle (https://en.wikipedia.org/wiki/Test_oracle). Briefly explain for each of the two parts how to derive it and whether this process can be (easily) automated. 2. DART executes a program both concretely and symbolically. Briefly explain the difference of these two types of executions in DART and why both are necessary. 3. What are path constraints? Give one example for path constraints that DART can solve and one example for path constraints that it cannot. Briefly explain why. 4. Give an example for a test oracle that test cases generated by DART use. Give one example for a test oracle that DART cannot automatically generate and briefly explain why. =========================================================================== end.