This page has the entire plan for the semester. For weeks in the future, consider it a plan subject to change. For weeks in the past consider it a record of what we have done. As for the current week, keep a watch for updates and changes.
Week 1 : Jan 16 - Jan 20 | |
Note | No lecture on Jan 16 (Martin Luther King Day) |
Lectures |
Wed: Course Introduction Wed and Fri: Putting testing first (TDD) |
Discussions |
D1: Group Introductions Part A Due 11:59 PM Jan 20; Part B Due 11:59 PM Jan 22 |
Assignments | A1: Warmup with Java and JUnit Due 11:59 PM Jan 31 |
Reading | Ammann and Offutt: Chapter 4 of Edition 2 |
Week 2 : Jan 23 - Jan 27 | |
Note | |
Lectures |
Mon and Wed: Test automation and JUnit (Chapter 3 of 2nd Edition) Fri: Background and overview of rest of the course: Why test |
Discussions |
D2: Observability and Controllability of tests Part A Due 11:59 PM Jan 27; Part B Due 11:59 PM Jan 29 |
Assignments | A1: Warmup with Java and JUnit Due 11:59 PM Jan 31 |
Reading | Ammann and Offutt: Chapter 1 or edition 1 or Chapters 1 and 3 of Edition 2 |
Week 3 : Jan 30 - Feb 3 | |
Note | |
Lectures |
Mon and Wed: Background and overview of rest of the course: Model-driven and Criteria-driven testing Fri: Input domain partitioning |
Discussions |
D3: Comparing Test Criteria Part A Due 11:59 PM Feb 5; Part B Due 11:59 PM Feb 7 |
Assignments |
A2: Input space partitioning Due 11:59 PM Feb |
Reading | Ammann and Offutt: Chapters 1 and 4 of Edition 1 or Chapters 2 5 and 6 of Edition 2 |
Week 4 : Feb 6 - Feb 10 | |
Note | |
Lectures |
Mon-Fri: Input domain partitioning; Pair-wise testing supplement Fri: Graph coverage overview |
Discussions |
D4: Applying Partitioning to Object Oriented Software Part A Due 11:59 PM Feb 10; Part B Due 11:59 PM Feb 12 |
Assignments |
A2: Input space partitioning Due 11:59 PM Feb |
Reading | Ammann and Offutt: Chapters 4 and 2.1 of Edition 1 or Chapters 6 and 7.1 of Edition 2 |
Week 5 : Feb 13 - Feb 17 | |
Note | |
Lectures |
Mon and Wed: Graph coverage criteria Fri: Graph coverage of source code |
Discussions |
D5: Misuse of Code Coverage Part A Due 11:59 PM Feb 17; Part B Due 11:59 PM Feb 19 |
Assignments |
A2: Input space partitioning Due 11:59 PM Feb A3: Graph Coverage Criteria Due 11:59 PM Feb 28 |
Reading | Ammann and Offutt: Sections 2.2 and 2.3 of Edition 1 or Sections 7.2 and 7.3 of Edition 2 |
Term project | Project Description |
Week 6 : Feb 20 - Feb 24 | |
Note | |
Lectures |
Mon and Wed: Graph coverage of source code; Class example Wed and Fri: Graph coverage for design elements |
Discussions | None |
Assignments | A3: Graph Coverage criteria Due 11:59 PM Feb 28 |
Reading | Ammann and Offutt: Sections 2.3 and 2.4 of Edition 1 or Sections 7.3 and 7.4 of Edition 2 |
Week 7 : Feb 27 - Mar 3 | |
Note | Take home midterm available on Canvas on Mar 3 |
Lectures |
Mon: Graph coverage for use cases Mon and Wed: Graph coverage for specifications Fri: Overview of logic Expressions |
Discussions | None |
Assignments |
A3: Graph coverage Criteria Due 11:59 PM Feb 28 A4: Graph Coverage and Logic Coverage Criteria Due 11:59 PM Mar 28 |
Reading | Ammann and Offutt: Sections 2.5 2.6 and 3.1 of Edition 1 or Sections 7.5 7.6 and 8.1 of Edition 2 |
Term project | Draft proposal due 11:59 PM on Mar 3 |
Week 8 : Mar 6 - Mar 10 | |
Note | Take home midterm due on Canvas on Mar 9 |
Lectures |
Mon Wed Fri: Overview of logic Expressions Fri: Start Structural Logic Coverage of Programs |
Discussions | None |
Assignments | A4: Graph Coverage and Logic Coverage Criteria Due 11:59 PM Mar 28 |
Reading | Ammann and Offutt: Section 3.2 of Edition 1 or Section 8.1 of Edition 2 |
Term project | Final proposal due 11:59 PM on Mar 20 |
Week 9 : Mar 13 - Mar 17 | |
Note | Spring Break |
Week 10 : Mar 20 - Mar 24 | |
Note | |
Lectures |
Mon: Discuss midterm and current letter grades Mon: Structural Logic Coverage of Programs Wed: Syntax-based Coverage Criteria |
Discussions | D6: Caution about MCDC Coverage |
Assignments | A4: Graph Coverage and Logic Coverage Criteria Due 11:59 PM Mar 28 |
Reading | Ammann and Offutt: Sections 3.3 and 5.1 of Edition 1 or Sections 8.3 and 9.1 of Edition 2 |
Term project |
Final proposal due 11:59 PM on Mar 20 Work on term project. |
Week 11 : Mar 27 - Mar 31 | |
Note | |
Lectures |
Mon and Wed: Program-based grammars Wed: Demo of MuJava Fri: Integration and Object-Oriented Testing (brief intro and examples only); Demo of MuJava Fri: Overview of research topics for the rest of the semester |
Discussions | D6: Caution about MCDC Coverage |
Assignments |
A4: Graph Coverage and Logic Coverage Criteria Due 11:59 PM Mar 28 A5: Syntax-based Coverage Criteria Due 11:59 PM Apr 4 |
Reading | Ammann and Offutt: Section 5.2 of Edition 1 or Section 9.2 of Edition 2 |
Term project | Term project |
Week 12 : Apr 3 - Apr 7 | |
Note | Test input generation |
Lectures |
Mon: Feedback-directed random testing and adaptive random testing Wed: Adaptive random testing and bounded exhaustive testing Fri: Symbolic execution |
Discussions | D7: Evaluation approach in Test Input Generation Papers |
Assignments |
A5: Syntax-based Coverage Criteria Due 11:59 PM Apr 4 A6: Test Input Generation Tools Due 11:59 PM Apr 18 |
Reading | Slides and papers available in Canvas Module |
Term project | Continue working on Term project |
Week 13 : Apr 10 - Apr 14 | |
Note | |
Lectures |
Mon: Symbolic execution and concolic testing Wed: Fault localization overview Fri: Discuss project termpaper and poster |
Discussions | D7: Evaluation approach in Test Input Generation Papers |
Assignments | A6: Test Input Generation Tools Due 11:59 PM Apr 18 |
Reading | Slides and papers available in Canvas Module |
Term project | Continue working on Term project |
Week 14 : Apr 17 - Apr 21 | |
Note | |
Lectures |
Mon: Metamorphic Testing Wed: UI Testing Fri: Fuzz Testing |
Discussions | None |
Assignments | A6: Test Input Generation Tools Due 11:59 PM Apr 18 |
Reading | Slides and papers available in Canvas Module |
Term project | Continue working on Term project |
Week 15 : Apr 24 - Apr 28 | |
Note | |
Lectures |
Mon and Fri: Regression Testing Wed: Guest Lecture on Test Automation Speaker: Sergio Ramos |
Discussions | None |
Assignments | None |
Reading | Slides and papers available in Canvas Module |
Term project | Continue working on Term project |
Week 16 : May 1 - May 5 | |
Note | Take home final available on Canvas on May 3 |
Lectures |
Mon: Regression Testing Wed and Fri: Poster presentations |
Discussions | None |
Assignments | None |
Reading | Slides and papers available in Canvas Module |
Term project | Term project Term paper and posters/recordings due |
Finals Week : May 8 - May 12 | |
Note | Take home final due on Canvas on May 9 |