Software Testing

Course Description

The role of testing in software development. Software testing approaches. Static, dynamic, and passive testing. Exploratory testing. Box approach: white box testing, black box testing, and grey box testing. Testing levels: unit testing, integration testing, system testing. Testing types, techniques, and tactics. Automated testing. Limitations of testing. Testing methods for particular domains, such as parallel and safety-critical systems, Web and mobile applications. Testing tools and frameworks.

Learning Outcomes

  1. recognize the importrance of software testing
  2. assess the applicability of particular software testing methods with regards to testing conditions
  3. select the appropriate software testing method for a given software project
  4. set up a development team to conduct a software testing
  5. apply the software testing principles, techniques, and tools in real-world applications

Forms of Teaching

Lectures

Laboratory

Week by Week Schedule

  1. Testing fundamentals
  2. Software quality management and assessment
  3. Program testing, performance analysis, and optimization
  4. Testing process and test-related measures
  5. Testing types/techniques
  6. Testing types/techniques
  7. Inspections, reviews, audits
  8. Midterm exam
  9. Inspections, reviews, audits
  10. Defect/fault tracking and technical support for such activities
  11. Defect/fault tracking and technical support for such activities
  12. Testing tools including static and dynamic analysis tools
  13. Automatization of testing; Testing languages and tools
  14. Limitations of testing in particular domains, such as parallel or safety-critical systems
  15. Final exam

Study Programmes

University graduate
Audio Technologies and Electroacoustics (profile)
Free Elective Courses (1. semester) (3. semester)
Communication and Space Technologies (profile)
Free Elective Courses (1. semester) (3. semester)
Computational Modelling in Engineering (profile)
Free Elective Courses (1. semester) (3. semester)
Computer Engineering (profile)
Free Elective Courses (1. semester) (3. semester)
Computer Science (profile)
Elective Courses of the Profile (2. semester)
Control Systems and Robotics (profile)
Free Elective Courses (1. semester) (3. semester)
Data Science (profile)
Free Elective Courses (1. semester) (3. semester)
Electrical Power Engineering (profile)
Free Elective Courses (1. semester) (3. semester)
Electric Machines, Drives and Automation (profile)
Free Elective Courses (1. semester) (3. semester)
Electronic and Computer Engineering (profile)
Free Elective Courses (1. semester) (3. semester)
Electronics (profile)
Free Elective Courses (1. semester) (3. semester)
Information and Communication Engineering (profile)
Free Elective Courses (1. semester) (3. semester)
Network Science (profile)
Free Elective Courses (1. semester) (3. semester)
Software Engineering and Information Systems (profile)
Free Elective Courses (1. semester) (3. semester)

Literature

(.), C. Kaner, J. Falk, H. Q. Nguyen (1999.), Testing Computer Software, 2nd Edition, Wiley,
(.), G. J. Myers, C. Sandler, T. Badgett (2011.), The Art of Software Testing, 3rd Edition, Wiley,
(.), C. Kaner, J. Bach, B. Pettichord (2001.), Lessons Learned in Software Testing, Wiley,

For students

General

ID 222598
  Winter semester
5 ECTS
L3 English Level
L1 e-Learning
30 Lectures
5 Laboratory exercises