ELECTIVE COURSE -> not offered every semester
Learning objectives:
Students master current techniques for testing in software projects from the perspective of a software developer or software tester in practice
Graduates of the module are able to independently define and adapt test cases in a software project and apply common test procedures.
Course content:
Fundamentals of testing: types of tests, quality assurance through testing, testing in software engineering, etc.
Various test procedures: e.g. classic test procedures, test-driven development, agile testing
Test case creation and test coverage
Test techniques: Mocks and stubs, dependency injection
Testing of concurrent code
Test frameworks: e.g. JUnit, GoogleTest, Jest
Management of the test process and errors
Regression tests and test automation (continuous integration)
Performance and load tests
Many further practical examples of test procedures and test techniques from operational practice