Fall 2018 — Schedule

Tentative class schedule
Note: AO-Ch x means chapter x in Ammann and Offutt text book
Meet Date Topics and Handouts Readings Assignments Quizzes In-Class Exercises
1 08/28 Class overview (pdf),
Responsibilities (pdf),
Intro to Software Testing (pdf)
Who said ISP can't be fun!
    Activity: check-in
2 08/30 Faults, Errors, and Failures
RIPR model
    in-class 1

More practice: randomizer.java (faulty)
3 09/04 Model Driven Test Design (MDTD) (pdf) AO-Ch2     Activity: MDTD 
More practice: MDTD-2
4 09/06 Putting Testing First (pdf) AO-Ch4     Activity: Agile airplane testing
Arrow-airplane - Sprint #1
Bullet-airplane - Sprint #2
Spade-airplane - Sprint #3
5 09/11 Test Automation (pdf),
Test Automation Framework (JUnit) (pdf)
AO-Ch3 Assignment 1 due Quiz 1 guide JUnit (We will use JUnit4 instead of JUnit5 to avoid configuration problems and Eclipse issues. You may use JUnit5 if you already have it set up on your machine.)

(require: your laptop with Java and Eclipse/Java IDE)

Activity: Junit
6 09/13 JUnit (pdf) AO-Ch3     in-class 2
(require: JUnit and Eclipse/Java IDE)
7 09/18 Test-Driven Development (TDD) (pdf) (stop at slide 27) Koskela's Test Driven Ch2, Ch3
(This is recommended reading. You don't have to buy the book. Free trial available.)
Assignment 2 due Quiz 2 guide in-class 3
(require: JUnit and Eclipse/Java IDE)
8 09/20 "Quality Everywhere: How quality fits into every step of the software development process" (pdf)

Guest speakers: Corey Vaudo and Conrad Rybka, Applied Predictive Technologies, Inc.
9 09/25 TDD: wrap-up (pdf) (from slide 28)
Coverage-based Test Design (pdf) (stop at slide 25)
Koskela's Test Driven Ch2, Ch3
Assignment 3 due
Model solution (Thanks to Baylor Towne)
Quiz 3 guide Activity: Candy "coverage" testing
Candy testing worksheets
10 09/27 Coverage-based Test Design (pdf) (from slide 26)
Input Space Partition (ISP) Testing (pdf)
AO-Ch6.1     in-class 4
11 10/02 ISP: Coverage Criteria (pdf)
  • All Combination
  • Each Choice
  • Pair-Wise
  • Base Choice
  • Multiple Base Choice
AO-Ch6.2, 6.3

An Industrial Study of Applying Input Space Partitioning to Test Financial Calculation Engines
(This is an example of how the concepts have been applied to industry; recommended reading, it will not be tested)
Assignment 4 due
Model solution (Thanks to Sean Gatewood)
Quiz 4 guide  
12 10/04 ISP: Applying to Web Apps       Selenium
  • Download Selenium Client & WebDriver, for Java (or download selenium-java-3.14.0.zip directly)
  • Download Third Party Browser Drivers (based on the web browser you use)
How do I know if my test environment works? in-class 5
(require: Selenium and Eclipse/Java IDE)
  10/09 Reading Day (No class)
13 10/11 Graph-based Testing (pdf)
Graph: Coverage Criteria
  • Node
  • Edge
  • Edge-Pair
AO-Ch7 Assignment 5 due
Model solution (Thanks to Caleb Kang and Ellis Tsung)
Quiz 5 guide in-class 6
Graph Coverage Web App
14 10/16 Graph: Coverage Criteria (pdf)
  • Complete Path
  • Prime Path
AO-Ch7 Assignment 6 due
Model solutions: Thanks to Theresa Mai and Sai Konuri, and Sean Gatewood
Quiz 6 guide Activity: Complete path and Prime path
Deriving Prime paths (pdf)
15 10/18 Graph: Data Flow Coverage Criteria (pdf)
  • All-Def
  • All-Use
  • All-DU
AO-Ch7     in-class 7

Data flow coverage web app
16 10/23 Graph: Applying to Source Code (pdf) AO-Ch7 Assignment 7 due
Model solution (Thanks to Ryan Ritzo and Kenneth Le)
Quiz 7 guide Activity: Graph coverage for source code
17 10/25 Wrap up: Graph coverage for source code (pdf) (from slide 18)

Graph: Applying to Design (pdf)

Graph coverage for Specification (pdf)
(Recommended reading, it will not be tested)
    in-class 8 (pdf)
18 10/30 Logic-based Testing (pdf)
Logic: Coverage Criteria
  • Predicate
  • Clause
  • Combinatorial
AO-Ch8 Assignment 8 due
Model solutions: (Thanks to Chaorui Chang and Pat Wongwiset)
Quiz 8 guide Logic coverage web app

in-class 8 (wrap up)

Activity: Logic coverage and determination (pdf)
19 11/01 Logic: Active Clause Coverage Criteria (ACC) (pdf)
  • GACC
  • CACC
  • RACC
AO-Ch8     Activity: Logic coverage and determination (wrap up)
Algebra Laws

in-class 9 (pdf)
20 11/06 Logic: Inactive Clause Coverage Criteria (ICC) (pdf)
  • GICC
  • RICC
AO-Ch8 Assignment 9 due
Model solution (Thanks to Yuyi Taylor)
Quiz 9 guide  
21 11/08 Logic: Applying to Source Code (pdf) AO-Ch8 Checkpoint 1 due 11/09 by 11:59pm (No late submission, no extension)   in-class 10 (pdf)
22 11/13 Syntax-based Testing AO-Ch9.1   Quiz 10 guide Activity: Grammar-based mutation (pdf)
23 11/15 Syntax-based Testing AO-Ch9.2 Checkpoint 2 due 11/16 by 11:59pm (No late submission, no extension)   in-class 11 (pdf)
24 11/20 Syntax: More Applying to Source Code (pdf) AO-Ch9.2 Assignment 10 due Quiz 11 guide
The online quiz will be available on 20-Nov-2018, 12:40pm-1:00pm with 15-minute quiz time limit.
Activity: Code Defenders
  11/22 Thanksgiving Break (No class)
25 11/27 Syntax: Applying to Input Space AO-Ch9.5 (optional) Assignment 11 due (No late submission, no extension) Quiz 12 guide Code Defenders — celebration

Input space grammar (pdf)
  Input space grammar for XML (pdf)  
26 11/29 Managing the Test Process (pdf) and Writing Test Plans AO-Ch10, 11     Input space grammar for XML (pdf)
in-class 12
27 12/04 Usability testing (pdf)       Activity: Develop usability testing plan
28 12/06 Course Wrap Up and Final Review   Showcase due 12/06   12/07 by 11:59pm (No late submission, no extension)    
FE 12/11 Final Exam: Tuesday, 11-December-2018, 2:00pm - 5:00pm, Thornton Hall E303 MEC 205
(please refer to the university final exam schedule)