Software Testing (INFR10057)
Normal Year Taken
Delivery Session Year
Students should have some basic understanding of software engineering and software lifecycle together with experience of programming (e.g. the material covered in the second year SEPP course in Informatics) .
This course further develops the introduction to testing in Informatics 2 - Software Engineering and Professional Practice. The course develops skills to select and apply a testing strategy and testing techniques that are appropriate to a particular development process, software system, or component. Class members will become capable users 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 is assessed by portfolio demonstrating the achievement of the learning outcomes. This course is based on the IEEE Software Engineering 2004 Software Testing syllabus.
Software testing is embedded in all software development processes and in recent years with the widespread adoption of DevOps and Continuous Integration, Delivery and Deployment, testing tools, automated testing, and the use of operational data in testing have become increasingly important. The course includes the following topics: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: Development LifecyclesProblem reporting, tracking, and analysis. Relevant QAA Computing Curriculum Sections: Software EngineeringClass members will take the development of tests for a small software project as their focus. For students taking the Informatics Large Practical course we recommend they take the software developed there as their focus. However, students are free to choose other software projects if they prefer. The goal is to gain experience of the full spectrum of testing techniques, test planning, testing process and demonstrate that experience on the chosen software project. Class members will work in groups of 10 and will be encouraged to share experience by providing comment and reviews of others work. Weekly tutorials will be structured around different aspects of the course and the development of a portfolio describing the work done on the selected software project.Each class member will develop an individual portfolio demonstrating they have achieved the learning outcomes of the course. This will use work on the testing of their chosen software project as evidence, augmented by appropriate other evidence. Acceptable kinds of evidence demonstrating achievement of the learning outcomes are diverse so part of the assessment is the design of the portfolio in advance of its construction. There are two or three "standard" portfoliodesigns but class members are encouraged to develop their own approaches that take account of their personal strengths and weaknesses. Portfolio designs will include specific assessment criteria. Each week there will be a group meeting, around 1-2 hours of recorded material covering the lecture material in the course. Guest lectures given by a practitioner on their experience of testing in different contexts will illustrate the application of the concepts covered in the course in the development of a real-world product.
Written Exam 0%, Coursework 100%, Practical Exam 0%
Additional Assessment Information
This is a 10 credit course, so it aims to develop skills in a range of techniques and demonstrate those skills as applied tothe chosen software project. Course members will work in small tutorial groups discussing issues that arise for theirchosen software project. Group members will provide comments and critiques of each other's work. Individually, classmembers will develop a portfolio of evidence of attainment of the learning outcomes of the course. At an early stage inthe course the design of each individual portfolio will be agreed to provide appropriate structure for the portfolio. Twoor three "standard" portfolio designs are available and specimen portfolios are also available. Class members areencouraged to develop their own portfolio designs or modify standard designs to meet their learning needs.
All course information obtained from this visiting student course finder should be regarded as provisional. We cannot guarantee that places will be available for any particular course. For more information, please see the visiting student disclaimer: