CS1632: Software Quality Assurance
Although the professor will make a best effort to have the class topic on the day listed, occasionally a change must be made (e.g., a lecture going long, or a guest lecturer unable to make it to class that day). However, these are the topics that will be covered and the expected date that they will be taught.
AFIST = A Friendly Introduction to Software Testing by Bill Laboon
- Introduction - What is Software Testing?
-
Testing Basics
- READING: AFIST, Chapters 2 - 4
-
Requirements Development and Testing
- READING: AFIST, Chapter 5
-
Test Plans, Exploratory and Smoke Testing
- READING: AFIST, Chapter 6-8
-
Defects
- READING: AFIST, Chapter 9
-
Breaking Software
- READING: AFIST, Chapter 7
-
Automated and Manual Testing, Writing Unit Tests (The Basics)
- READING: AFIST, Chapter 12-13
-
Advanced Unit Testing
- READING: AFIST, Chapter 14
-
Test-driven Development
- READING: AFIST, Chapter 15
-
Writing Testable Code
- READING: AFIST, Chapter 16
-
Behavior-Driven Development
- Writing Acceptance Tests for Behavior-Driven Development
-
Web Testing with Selenium
-
Automated Web Testing with Selenium / JUnit
-
MIDTERM
-
Pairwise and Combinatorial Testing
- READING: AFIST, Chapter 17
-
Stochastic and Property-Based Testing
- READING: AFIST, Chapter 18
-
Performance Testing
- READING: AFIST, Chapter 19
- NO CLASS THIS WEEK - SPRING BREAK
-
Performance Testing, continued
-
Performance Exercise
-
Security Testing
- READING: AFIST, Chapter 20
-
Security Testing (Penetration Testing)
-
Security Exercise
-
Interacting With Stakeholders
- READING: AFIST, Chapter 21
- Stakeholder Interaction Exercise
-
(GUEST LECTURE) Carol Nichols, Quality with Rust
-
Stakeholder Interaction Exercise
-
(GUEST LECTURE) Usability Testing
-
MIDTERM 2