Undergraduate Course: Software Testing (INFR10057)
|School||School of Informatics
||College||College of Science and Engineering
|Credit level (Normal year taken)||SCQF Level 10 (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 Informatics 2C - Software Engineering. 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
|High Demand Course?
Course Delivery Information
|Academic year 2020/21, Available to all students (SV1)
|Learning and Teaching activities (Further Info)
Lecture Hours 20,
Seminar/Tutorial Hours 8,
Summative Assessment Hours 2,
Programme Level Learning and Teaching Hours 2,
Directed Learning and Independent Learning Hours
|Assessment (Further Info)
|Additional Information (Assessment)
||Written Exam 45%
Weighting is 45% coursework, 10% tutorial participation and submission, and 45% exam.
Coursework submission will receive feedback. Tutorials will be assessed based on engagement in discussions and individual submissions. Exam will assess all the topics covered in the course.
||Hours & Minutes
|Main Exam Diet S2 (April/May)||2:00|
|Resit Exam Diet (August)||2:00|
On completion of this course, the student will be able to:
- Analyze requirements to determine appropriate testing strategies
- Design and implement comprehensive test plans with instrumented code
- Apply a wide variety of testing techniques and compute test coverage and yield according to a variety of criteria
- Evaluate the limitations of a given testing process, using statistical methods where appropriate, and summarise outcomes
- 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||Dr Ajitha Rajan
Tel: (0131 6)50 5118
|Course secretary||Mrs Michelle Bain
Tel: (0131 6)51 7607