|
Week - 1
|
|
Course introduction, presentation of course structure and assessment method, the importance of software quality, the historical development of the quality concept and its place in today’s software industry.
|
|
|
Week - 2
|
|
Quality metrics and standards, software quality models, the concepts of verification and validation, examination of the differences between error, failure and defect.
|
|
|
Week - 3
|
|
Test levels, unit testing and integration testing, the test pyramid approach, evaluation of how much testing should be written at each level.
|
|
|
Week - 4
|
|
System testing and acceptance testing, user acceptance testing, linking test scenarios with business requirements, acceptance criteria and creating a test plan.
|
|
|
Week - 5
|
|
Test types, functional and non functional tests, regression, smoke, performance and security testing, test type selection through real scenarios.
|
|
|
Week - 6
|
|
Test techniques, the black box approach, equivalence classes and boundary value analysis, the white box approach, code coverage measurement and experience based approaches.
|
|
|
Week - 7
|
|
Test case preparation, test data management, test environment setup, use of mock and stub objects, the principle of test independence.
|
|
|
Week - 8
|
|
Midterm examination.
|
|
|
Week - 9
|
|
Introduction to unit testing frameworks, introduction to tools such as Jest and Vitest in the JavaScript ecosystem, writing the first unit test and the test execution flow.
|
|
|
Week - 10
|
|
Component and interface tests, tools such as React Testing Library and Vue Test Utils, simulation of user interaction, visual validation approaches.
|
|
|
Week - 11
|
|
End to end testing approach, use of tools such as Playwright and Cypress, writing browser based scenarios, prevention of flaky tests.
|
|
|
Week - 12
|
|
The concept of continuous integration, automatic triggering of tests, creation of basic workflows with GitHub Actions, feedback processes for failed tests.
|
|
|
Week - 13
|
|
Code review and static analysis, use of tools such as ESLint and Prettier, code quality metrics, automatic checking processes in pull requests.
|
|
|
Week - 14
|
|
Defect tracking systems, bug reporting format, priority and severity levels, test reporting and quality dashboards, the continuous improvement cycle and general recap.
|
|