Домашние задания по курсу «Java для тестировщиков»

Важно: Правила оформления вопросов, сообщений о ошибках и проблемах

Блок 1. Введение в Java

1.1. [x] Введение в Java: JDK, JRE, JVM, IntelliJ IDEA

1.2. [x] Программирование на Java: переменные, операторы, работа с отладчиком

Блок 2. Основы Java, Автотесты и CI

2.1. [x] Примитивные типы данных, условные операторы, выход за границы типов и погрешность вычислений

2.2. [x] Testability, автотесты, введение в ООП: объекты и методы

2.3. [x] Система сборки Maven, управление зависимостями, автотесты на JUnit5

2.4. [x] Циклы, параметризованные тесты и аннотации

2.5. [x] Выстраивание процесса непрерывной интеграции (CI): Github Actions. Покрытие кода с JaCoCo, статический анализ кода: CheckStyle, SpotBugs

Блок 3. ООП

3.1. [x] Объектно-ориентированное программирование и проектирование

3.2. [x] Объектно-ориентированное программирование: ключевые принципы

3.3. [x] Объекты с внутренним состоянием, управление состоянием при тестировании

3.4. [x] Композиция и зависимость объектов. Mockito при создании автотестов

3.5. [x] Наследование и расширяемость систем. Проблемы наследования

Блок 4. Исключения, Интерфейсы, Generics и Collections Framework

4.1. [x] Исключительные ситуации и их обработка. Тестирование исключений

4.2. [x] Интерфейсы для организации малой связности. Обобщённое программирование (Generics)

4.3. [x] Collections Framework. CRUD и тестирование систем, управляющих набором объектов

Доп.материалы: см. в репозитории кодом.