Undergraduate Course: Software Testing (INFR09024)
|School||School of Informatics
||College||College of Science and Engineering
|Credit level (Normal year taken)||SCQF Level 9 (Year 3 Undergraduate)
||Availability||Available to all students
|Summary||This module is intended to provide in-depth coverage of software testing further to develop the introductory material covered in Inf2C. The goal of the course is to provide students with the skill to select and apply a testing strategy and testing techniques that are appropriate to a particular software system or component. In addition the student will become a capable user of test tools; will be able to assess the effectiveness of their testing activity; and will be able provide evidence to justify their evaluation. The course will be supported by two practical exercises involving the development of appropriate tests and the application of a range of testing tools. This course is based on the IEEE Software Engineering 2004 Software Testing syllabus.
# Testing techniques and principles: Defects vs. failures, equivalence classes, boundary testing.
# Types of defects.
# Black-box vs. Structural testing.
# Testing strategies: Unit testing, integration testing, profiling, test driven development.
# State based testing; configuration testing; compatibility testing; web site testing.
# Alpha, beta, and acceptance testing.
# Coverage criteria.
# Test instrumentation and tools.
# Developing test plans.
# Managing the testing process.
# Problem reporting, tracking, and analysis.
Relevant QAA Computing Curriculum Sections: Software Engineering
Information for Visiting Students
Course Delivery Information
|Not being delivered|
| 1 - Analyze requirements to determine appropriate testing strategies.
2 - Design and implement comprehensive test plans
3 - Instrument code appropriately for a chosen test technique
4 - Apply a wide variety of testing techniques in an effective and efficient manner
5 - Compute test coverage and yield according to a variety of criteria
6 - Use statistical techniques to evaluate the defect density and the likelihood of faults.
7 - Evaluate the limitations of a given testing process and provide a succinct summary of those limitations
8 - Conduct reviews and inspections
|* Mauro Pezzè and Michal Young, Software Testing and Analysis, John Wiley & Sons, 2008|
* Glenford J. Myers, et al, The Art of Software Testing , John Wiley & Sons Inc, 2004
* Scott Loveland et al, Software Testing Techniques: Finding the Defects That Matter , Charles River Media, 2004
* R. Patton, Software Testing, SAMS, 2005
* C Kaner, J Bach & B Pettichord Lessons Learned in Software Testing: A Context-Driven Approach, Wiley Europe, 2002
* There is also extensive supporting material online which will be used in teaching
|Course organiser||Mr Stuart Anderson
Tel: (0131 6)50 5191
|Course secretary||Mrs Victoria Swann
Tel: (0131 6)51 7607