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



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)
Elective Courses (1. semester)
Communication and Space Technologies (profile)
Elective Courses (1. semester)
Computational Modelling in Engineering (profile)
Elective Courses (1. semester)
Computer Engineering (profile)
Elective Courses (1. semester)
Computer Science (profile)
Elective Courses (2. semester) Elective Courses of the Profile (2. semester)
Control Systems and Robotics (profile)
Elective Courses (1. semester)
Data Science (profile)
Elective Courses (1. semester)
Electrical Power Engineering (profile)
Elective Courses (1. semester)
Electric Machines, Drives and Automation (profile)
Elective Courses (1. semester)
Electronic and Computer Engineering (profile)
Elective Courses (1. semester)
Electronics (profile)
Elective Courses (1. semester)
Information and Communication Engineering (profile)
Elective Courses (1. semester)
Network Science (profile)
Elective Courses (1. semester)
Software Engineering and Information Systems (profile)
Elective Courses (1. semester)


(.), 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


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