Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- E2E Smoke check
- - create task "1";
- - cancel edit by press Esc at all filters ("1"->"1 edited" = "1");
- /*
- хороший вариант - с неявной проверкой
- cancel edit как раз проверит единственную таску, которая была добавлена за шаг до этого
- */
- /*
- переход на другой фильтр - это тоде операция
- и она тоже должна быть проверена
- когда мы точно знаем - что фильтеринг работает - когда состояние списка изменится при переходе на фильтр
- когда мы знаем - что фильтеринг работает правильно - когда новое состояние списка тасок после перехода на новый фильтр верное
- а мы этого - не получим
- наш список при переходе на active фильтр - не изменится
- и именно это нам не даст точно проверить переход на фильтр
- нам нужна тут - другая ситуация
- например - если таску 1 закомплитить до перехода на active фильтр
- то было-стало для состояния тасок - будет разным
- и потому - мы достаточно ночно проверим фильтеринг
- сразу думай о проверках
- если операция не првоеряет предыдущую
- значит - нужна проверка
- */
- - edit "1" -> "1 edited" at active filter;
- - complete "1 edited" at active filter;
- /*
- тоже неплохой вариант - отредактировали таску и закомплитили ее
- раз таска = единственная видимая в списке - значит следующее действие над таской может быть неявной проверкой для предыдущего
- тут все ок
- */
- /*
- тут у нас тоже переход на фильтр - на completed
- и тут как раз - было-стало - меняется для списка
- что очень хорошо - фильтеринг проверим точно
- */
- - reopen "1 edited" at completed filter;
- /*
- reopen покрыть на completed-е - отличная идея
- самое место
- да и проверки будут максимально точными
- я бы еще покрыла на этом фильтре - clear completed
- поравномернее по фильтрам распределили бы операции
- это тоже важно - т к дает лучший фидбек про то - что на всех фильтрах операции над тасками работают
- (с бОльшей долей вероятности это так - если в тесте операции распределены по разным фильтрам поравомернее)
- */
- /*
- а вот возвращаться опять на active - уже не стоит
- мы уже переходили на active
- правдя, а другом контексте - с другого фильтра
- вспоминай - в рамках smoke мы стараемся покрыть высокоприоритетное только на одном из контекстов
- и тут - та же история
- операция = переход на active
- делать мы ее можем на разных фильтрах (на разных контекстах)
- но в рамках е2е, реализующего smoke покрытие, будем делать единожды
- хорошей стратегией будет такая
- поработали на all
- перешли на один фильтр
- что-то там поделали
- перешли на другой
- поделали что-то другое
- вернулись на all
- и что-то доделали/допроверили
- получится - что мы на каждый фильтр по разу зайдем
- для smoke этого достаточно
- разумно на самый конец оставить всяческие удаления
- тогда тебе меньше тасок понадобятся - сэкономишь на добавлении
- */
- - delete "1 edited" at active filter;
- - create tasks "2" and "3";
- /*
- понимаю желание проверить complete all получше - не на одной таске
- но для smoke - можно все же проверить и на одной таске )
- задача smoke покрытия = предварительно и очень быстро ответить - все важное работает
- ничего фатального с приложением не произошло, можно тестировать дальше
- т к - нет цели все досконально проверить
- есть цель дать быстрый и точный фидбек про важное
- все ли по первым прикикам - в рабочем состоянии
- так что - я бы не разбазаривала ресурсы)
- и проверяла complete all на единственной таске
- и выше по алгоритму )
- */
- - complete all at all filters;
- - assertCompletedTasksAre("2", "3");
- /*
- идея проверять только закомпличеные таски - не очень удачная
- про это Яков рассказывал в предыдущем видео, минуты с 58-ой
- я выше писала - что нам для перехода на active - уже нужна закомпличеная таска
- там идеально - будет вот так
- закомплитили таску
- проверили тексті тасок в списке = проверили что на all фильтре все таски отображаются вне зависимости от статуса
- перешли на active
- проверили состояние видимых тасок
- таким образом - точно проверили фильтеринг (было-стало отличаются и стало = правильное)
- и допроверили закомпличивание
- таким образом - вот и не понадобилась нам проверка именно закомпличеных тасок)
- всегда работали с полным списком тасок
- */
- - assertItemsCountIsZero;
- /*
- хм)
- раз тут указала явно проверку - значит в других местах их просто не планировалось?
- рассуждай так
- каждая операция должна быть проверена сразу
- если можно воспользоваться неявной проверкой через действие - ок, используй это
- если нет - делай явную проверку
- */
- - clear completed;
- - tasksShouldBe(empty).
- /*
- в целом - все очень близко к цели
- чуть лучше проверить фильтеринг (переход на active)
- суть равномернее распределить действия по фильтрам
- убрать лишние заходы на те же самые фильтры
- и внимательно отнестить к проверкам
- а так - все ок
- высокоприоритетное выделила верно
- как правило - неявные проверки использовала корректно
- но не всегда)
- еще раз перечитай - что я в слек тебе кинула)
- скорей всего - будут вопросы к реализации некоторых действий и/или проверок
- пробуй разобраться сама
- потом - если не помогает - заглядывай в faq
- там есть кое-что на єту тему
- ну и в слеке спрашивай если что)
- */
Advertisement
Add Comment
Please, Sign In to add comment