Добираете с помощью этого задания баллы до 60-ти и будет считаться что вы закрыли предмет.
Заглушки тестов которые необходимо наполнить находятся в папке tests.
- TestDeque
- TestPriorityQueue
- TestPeekingIncreasingIterator
- TestMergingPeekingIncreasingIterator
Структуры данных которые необходимо реализовать, а затем протестировать.
- CyclicArrayDeque
- LinkedDeque
- ArrayPriorityQueue
- PeekingIncreasingIterator
- MergingPeekingIncreasingIterator
Если это необходимо, то в тестах необходимо протестировать не только API интерфейса, но и конкретную реализацию.
Правильное поведение (aka требования) интерфейса или класса описано в javadoc в самом интерфейсе/классе. Особое внимание следует обратить на проверки граничных значений. Корректность асимптотики проверять не следует.
Тесты для структур данных должны содержать в себе проверки
- Конструкторов
- Методов
- Итератора
Тесты на итераторы должны содержать в себе проверки
- Конструкторов
- Методов
Дописанный тест оценивается в семь баллов. Тест сдаётся целиком, но можно сдавать не все тесты. Всего есть четыре теста, следовательно максимум можно получить 28 баллов. За непротестированные (и в принципе неправильно работающие) части функциональности баллы будут сниматься.
Частичную теорию о написании тестов можно узнать здесь:
- Разработка через тестирование
- Тестирование. Тест-дизайн
- Тестирование. Тестовое покрытие
- TDD - Разработка через тестирования. Урок 1. Введение.Основы TDD и Unit Тестирования.
- Техники анализа классов эквивалентности и граничных значений
! Чтобы тесты заработали, нужно в IDEA пометить папку tests как «Test source root» и добавить в проект .jar файлы из папки lib
Как сдавать задание:
- Сделать форк данного репозитория (либо сделать merge с master если уже есть)
- Найти свой бранч и сделать на основе master новый бранч с суффиксом "v2". <название_вашего_бранча>v2
- Написать код и сделать pull request в master этого репозитория
Предварительный дедлайн 23:59 14 января.
Контакты для связи: TamTam @mikhailnechaev
Также вопросы можно задать в чате курса в тамтам «Технополис. АиСД 2017. Чат для обсуждения».