@Test public void testTasksFlow() { ... filterAll(); assertTasksAre("test1"); assertTasksAre("test1"); } /* зачем 2 одинаковые проверки подряд ? внимательность) */ ********************************* @Test public void testDeleteAtActiveAndtestCancelEditAtActive() { //given add("test1"); filterActive(); delete("test1"); add("test2"); filterActive(); cancelEdit("test2", "test2 edited"); assertTasksAre("test2"); assertItemsLeft(1); } /* хм... я не пойму, почему реализуешь один тест-метод, а не 2 ведь мы планировали - именно фиче-тесты когда каждый тест-метод - проверяет лишь одно действие вот это я имела в виду см ниже */ @Test public void testDeleteAtActive() { //given add("test1", "test2"); filterActive(); delete("test2"); assertTasksAre("test1"); assertItemsLeft(1); } /* обрати внимание пропустили строку после filterActive(); - т к это - все еще предварительное действие в предварительных действиях - добавили 2 таски чтобы иметь возможность после удаления - проверить и assertItemsLeft это и покрытие улучшит - мы же еще и assertItemsLeft покрыли и тестовая ситуация более интересная - т к работам мы с второй=не единственной таской */ @Test public void testCancelEditAtActive() { //given add("test1"); filterActive(); cancelEdit("test1", "test1 edited"); assertTasksAre("test1"); assertItemsLeft(1); } /* тут - логика похожая */ ************************************* /* а если бы была цель делать второ е2е то он бы был тоже - другой */ @Test public void testDeleteAndCancelEditAtActive() { /* сравни имя метода с testDeleteAtActiveAndtestCancelEditAtActive() вопрос - мы скрыли что-то важное в варианте testDeleteAndCancelEditAtActive()? повторять что-либо в имени - нет смысла */ //given add("test1, test2"); /* если тут добавить лишь одну таску - то мы еще и add покрываем как тестовое действие а мы этого не планировали */ filterActive(); delete("test1"); assertTasksAre("test2"); /* обрати внимание - после каждой операции - проверяем результаты если следующая операция не проверяет предыдущую то - используй явные проверки вместо неявных через действие */ cancelEdit("test2", "test2 edited"); assertTasksAre("test2"); assertItemsLeft(1); } /* этой задачи = реализовать еще один е2е - не стояло нам нужно было - реализовать именно фиче-тесты выше - я привела их поскольку это мы уже обсуждали несколько раз по этой работе я ставлю accepted = можно двигаться дальше, но к єтой работе остались вопросы переделывать и снова отдавать эту работу на ревью - не обязательно но - судя по реализации у тебя или какое-то свое твердое мнение - как должны выглядеть тесты для этой работы или все же предыдущие материалы ты недостаточно хорошо усвоил если с чем-то не согласен - давай планировать, обсудим то ли в переписке в слеке то ли в разговоре голосом по скайпу если что-то не ясно - советую разобраться и задать все вопросы, которые остались советую вернуться в видео после работы Smoke test и все видео - еще раз последовательно посмотреть эту работу уже не буду заставлять переделывать но если эти же ошибки будут в следующих работах - я снова буду настаивать на переделке советую проработать материал и все для себя выяснить все что не понятно все с чем не согласен) */