| A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | So Yummy - ТЗ для QA | Баги ТЗ та Макету | Пропозиції та рекомендації | Коментарі | ||||||||||||||||||||||
2 | ||||||||||||||||||||||||||
3 | Стартова сторінка | Стартова сторінка | Стартова сторінка | |||||||||||||||||||||||
4 | 1. При першому вході користувач потрапляє на стартову сторінку, яка мiстить кнопки: - Registration - Sign in | Ок | Функції реєстрації і авторизації не розділені в ТЗ | |||||||||||||||||||||||
5 | Логінизація за допомогою форми | Логінизація за допомогою форми | Логінизація за допомогою форми | В ТЗ немає опису випадаючих списків. В ТЗ немає опису модальних вікон. | ||||||||||||||||||||||
6 | 1. Kлік на кнопку Registration відкриває форму реєстрації для нового користувача. Сторiнка мiстить поля для вводу: - Name, - Email, - Password | Ок | Не вказано, що внизу сторінки є кнопка "Sign in" | Відсутня опція "Забули пароль?". Немає опції входу за допомогою Google аккаунта або іншого аккаунта. | ||||||||||||||||||||||
7 | 2. Kлік на кнопку Sign in відкриває форму логінізації та містить поля: - Email, - Password | Ок | Не вказано, що внизу сторінки є кнопка "Registration" | |||||||||||||||||||||||
8 | 3. Поле форми авторизації користувача - Email має валідуватися: - обов'язкове значення, - повинно обов'язково містити знак "@" і "крапку" (у частині з назвою хоста) | Ок | Не вказано, валідні розкладки для введення тексту (латиниця чи кирилиця) | |||||||||||||||||||||||
9 | 4. Поле форми авторизації користувача - Рassword має валідуватися: - обов'язкове значення - повинно включати цифри та літери - мінімальна кількість символів у полі - 6(включно), максимальна - 16(включно) | ок | Не вказано, валідні розкладки для введення тексту (латиниця чи кирилиця), регістри та допустимість спецсимволів | Не зазначено, чи допускаються пробіли або спеціальні символи | ||||||||||||||||||||||
10 | 5. Поле форми авторизації користувача- Name має валідуватися: - обов'язкове значення - може включати цифри та літери (латиниця, кирилиця) - мінімальна кількість символів у полі - 1(включно), максимальна - 16(включно) | 1. Авторизація користувача не містить поля "Name". 2. В макеті є літера верхнього регістру, про її обов'язковість або недопустимість не вказано в ТЗ | Потрібно в ТЗ замінити "Авторизація" на "Реєстрація" | Не вказано, чи потрібно враховувати регістр символів, а також чи дозволені спеціальні символи | ||||||||||||||||||||||
11 | 6. Якщо користувач ввів не валідне значення в полях Email, Password або Name, має з'явитися повідомлення із зазначеною в ньому помилкою валідації. | |||||||||||||||||||||||||
12 | 7. По кліку на Sign up / Sign in відбувається валідація введених даних. При правильно введених даних, користувач повинен бути переадресований на головну сторiнку | ок | ||||||||||||||||||||||||
13 | * правила валідації полів можуть мінімально відрізнятись від описаних, в залежності від бібліотеки, використаної під час розробки застосунку. При тестуванні полів, важливо перевірити лише основні логічні тестові сценарії. Основна функціональність застосунку має пріорітет над правилами валідації полів. | Сумнівне доповнення, якщо застосунком неможливо користуватись без обовʼязкової реєстрації чи авторизації | ||||||||||||||||||||||||
14 | ||||||||||||||||||||||||||
15 | Хедер | Хедер | Хедер | |||||||||||||||||||||||
16 | 1. В хедері знаходяться такi елементи: - Логотип - Categories (елемент навігації на сторінку рецептiв по категорiях) - Add receipes (елемент навігації на сторінку додавання рецепту) - My recipes (елемент навігації на сторінку доданих рецептів користувачем, для швидкого перегляду) - Favorites (елемент навігації на сторінку обраних рецептів користувачем, для швидкого перегляду) - Shopping list - сторінка, де можна по обраним рецептам створити список покупок - іконка лупи (елемент навігації на сторінку пошуку по інгрідієнтах) - фото користувача, або іконкa, якщо таке фото відсутнє та ім'я користувача (по клiку на яку, вiдкривається модалка з кнопками Edit Profile / Log out) - Перемикач теми | Не вказано яким способом закривається модалка з кнопками Edit Profile / Log out | Варто зазначити, що вказаний перелік елементів актуальний лише для десктопної версії додатку і описати елементи хедера для планшетів та мобільних телефонів | |||||||||||||||||||||||
17 | 1.1 На мобільній версії блок навігації та перемикач теми відкривається за допомогою бургер меню, що виїзжджає з верху та має розмір по висоті на всю висоту пристрою користувача | Варто вказати в ТЗ, про те, що у мобільній версії поряд з іконкою лупи відображається клікабельний текст "Search" | ||||||||||||||||||||||||
18 | 2. По клiку на логотип, користувач переадресовується на головну сторінку | Ок | ||||||||||||||||||||||||
19 | 3. Перемикач теми змінює тему зі світлої на темну і навпаки Обрана тема зберігається в сховищі і застосовується при вході користувача на сторінку додатку * додаткове завдання | Ок | ||||||||||||||||||||||||
20 | 4. По клiку на Edit Profile, з'являється модалка редагування даних користувача User profile, яка мiстить: - фото користувача, або іконкa з кнопкою редагування (додавання) зображення - поле Name + iконка редагування - кнопка Save changes - по клiку на яку, модалка закривається, змiни зберiгаються - по клiку на бекдроп, модалка закривається, змiни не зберiгаються - по клiку на Escape, модалка закривається, змiни не зберiгаються | Ок | ||||||||||||||||||||||||
21 | 5. По клiку на кнопку Log out має з'явитися модалка з можливістю підтвердити чи відмовитися. - по кліку на кнопку Cancel модалка закривається, користувач залишається в додатку - по кліку на Escape модалка закривається, користувач залишається в додатку - по кліку на Х модалка закривається, користувач залишається в додатку - по кліку на бекдроп, модалка закривається, користувач залишається в додатку - за кліком на кнопку Log out користувач виходить із програми | Ок | ||||||||||||||||||||||||
22 | Головна сторінка | Головна сторінка | Головна сторінка | |||||||||||||||||||||||
23 | 1. Коли користувач заходить в додаток йому відкривається домашня сторінка, на якій він бачить сторінку типу лендінг-пейдж, з якої можна вже переходити на інші сторінки: | Користувач може переходити на інші сторінки лише після реєстрації або авторизації | Варто додадти можливість бачити застосунок без реєстрації чи авторизації. Як варіант, без можливості створювати списки чи додавати рецепти. | |||||||||||||||||||||||
24 | 1.1. Головна сторiнка мiстить - вікно з повiдомленням-запрошенням на сторінку з категоріями по кліку на See recipes, активна категорія - сніданки - поле для вводу ключового слова для пошуку страви по назві. При введенні значень і при нажатії кнопки Search - відбуваєтья перенаправлення на сторінку пошуку по Ключовому слову. Якщо в поле для пошуку значення відсутнє, редірект не відбувається і користувач отримує відповідне пуш повідомлення - список страв по категоріям, кожна з яких містить прев'ю рандомних 1/2/4 рецептів за категорією: • Breakfast • Miscellaneous • Chicken • Desserts - кнопка See all під кожною категорією - кнопка Other categories | Уточнити в ТЗ щодо кількості рецептів (1/2/4) - мобільний, планшет, десктоп. На макеті головної сторінки мобільної версії категорії відображені не відповідно до ТЗ | ||||||||||||||||||||||||
25 | 2. По клiку на кнопку See all відкривається розділ Categories з зазначеним підрозділом обраної категорії | Ок | ||||||||||||||||||||||||
26 | 3. По клiку на кнопку Other categories відкривається розділ Categories | Ок | ||||||||||||||||||||||||
27 | 4. Прев'ю рецепту містить фото, якщо немає - заглушка, та назву рецепту | Ок | ||||||||||||||||||||||||
28 | 4.1. По клiку на прев'ю обраного рецепту, відкривається сторінка рецепту страви | Ок | ||||||||||||||||||||||||
29 | Сторінка Categories | Сторінка Categories | Сторінка Categories | Відсутній блок опису "Загальних рецетів". Незрозуміло хто їх додає? | ||||||||||||||||||||||
30 | 1. Сторінка Categories містить список назв категорій, при виборі однієї з них, назва підсвічується і на сторінці з'являються прев'ю рецептів з обраної категорії • Beef • Breakfast • Chicken • Dessert • Goat • Lamb • Miscellaneous • Pasta • Pork • Seafood • Side • Starter • Vegan • Vegetarian | На макеті відображаються не всі категорії і не зображено, як можна переміститися до наступних | 1. Варто поміняти категорію "Desert" на "Deserts", як на макеті 2. На макеті не видно повний перелік назв категорій | |||||||||||||||||||||||
31 | 2. Якщо юзер перейшов не через перенаправлення, а з навігації в головному меню, то по замовчуванню встановлюється категорія - Beef | В макеті встановлено категорію Breakfast | ||||||||||||||||||||||||
32 | 3. Прев'ю рецепту містить фото, якщо немає - заглушка, та назву | Ок | ||||||||||||||||||||||||
33 | 3.1. По клiку на прев'ю обраного рецепту, відкривається сторінка рецепту страви | Ок | ||||||||||||||||||||||||
34 | Сторінка Add recipe | Сторінка Add recipe | Сторінка Add recipe | В ТЗ немає розділу про інгрідієнти | ||||||||||||||||||||||
35 | 1. Сторінка Add recipe містить - блок для додавання/редагування фото рецепта - блок для опису рецепту - блок для додавання інгредієнтів - блок для введення текста самого рецепта - блок Follow us - блок Popular recipe | 1. Не вказано допустимі формати та розміри фото, які можна додати. 2. Не позначені поля обову'язкові для заповнення 3. Не вказано максимальну кількість введених символів, розкладку і допустимість спецсимволів для полів для введення 4. В формі Add recipe поле для введення тексту самого рецепта одне, а при перегляді рецепта етапи приготування відображаються нумерованим списком 5. Відсутність опису додавання рецепту (валідація, кнопка Додати) | 1. Потрібно уточнити пристрої, для яких актуальний перелік елементів сторінки. 2. Відсутня можливість додавати рецепт без фото, змінювати/видаляти фото | Не зрозуміло куди додається рецепт, на початок чи кінець списку. Яка сторінка повинна відкриватись після додавання рецепту. В макеті на першій сторінці НЕ має бути випадаючих списків (вони всі на другій сторінці) Відсутня інформація про додавання фото до рецепту. Відсутнє автозбереження заповнюваного рецепта до його додавання. | ||||||||||||||||||||||
36 | 2. Блок для опису рецепту містить поля для заповнення: - назва рецепту - опис рецепту - категорія рецепту - вибирається з випадаючого списку - часу приготування рецепту - вибирається з випадаючого списку в діапазоні від 5хв до 120хв з кроком 5 Випадаючі списки повинні показувати 6рядків данних, всі інші повинні скролитись в межах даного списку. | На макеті максимальний час - 140 | 1. Збільшити діапазон часу приготування 2. Додати можливість вводити час власноруч 3. Додати варіант заповнення часу приготування (поле "години" "хвилини") | В розділі "Опис рецепта" не на всіх девайсах є випадаючий список. Невідмічені поля для обов'язкового заповнення. | ||||||||||||||||||||||
37 | 3. Блок для додавання інгредієнтів містить: - компонент, який змінює к-сть полів інгредіентів в масив. Лічильник к-сті показує актуальну довжину масиву інгредієнтів. Кнопки +/- або додають або видаляють поля для вводу, починаючи з кінця. - поля для вводу данних про інгредієнти, складається з: * назву інгредієнта * к-сть інгредієнта + міра к-сті з випадаючого списку * кнопка видалення, по кліку на яку воно видаляється зі стейту і сторінки. | Варто розширити можливості роботи з інгредієнтами та розширити опис в ТЗ: 1. Редагування доданих в рецепт інгредієнтів | Чи можна редагувати інгредієнти після додавання? Стосовно інгрідієнтів, не зрозуміло, куди їх додавати і звідки брати зображення. Немає обмежень по кількості інгрідієнтів. Розташування кнопки "Додавання інгрідієнтів" в горі - не зручна в користуванні. | |||||||||||||||||||||||
38 | 4. Блок для введення текста самого рецепта . текст введений користувачем починається з нового рядка після натискання на клавішу ENTER в текстовому полі. Якщо весь текст був написаний без переходу на новий рядок через ENTER, то в масиві повинен бути один елемент з цим текстом | |||||||||||||||||||||||||
39 | 5. Блок Follow us мiстить список елементів з посиланнями на соцмережі | На макеті в мобільній версії та планшеті немає блоку "Follow us" | ||||||||||||||||||||||||
40 | 6. Блок Popular recipe, який рендерить список популярних рецептів В разі помилки компонент рендерить повідомлення про відсутність популярних рецептів в данний момент. 6.1. Елементи потрібно виконати лінками і по кліку на будь-який з них користувача потрібно пересувати на сторінку з описом рецепту RecipePage | Недостатньо інформації як саме перевіряти "В разі помилки компонент рендерить повідомлення про відсутність популярних рецептів в данний момент". Якщо перевіряти через апі, то відображаються різні повідомлення при різних помилках https://www.loom.com/i/40ce725c642545c495bf06c220faaa8e | Пункт 6.1 незрозуміло описаний | |||||||||||||||||||||||
41 | Сторінка Favorites | Сторінка Favorites | Сторінка Favorites | |||||||||||||||||||||||
42 | 1. На сторінці Favorites відображена галерея з картками рецептів, що були збережені під час додавання їх по кліку на кнопку Add To Favorite (зi сторiнки рецепту) | ок | ||||||||||||||||||||||||
43 | 1.1. Картки рецептiв містять - назву рецепту - фото рецепту - текст - опис рецепту - час приготування - кнопка See recipe - кнопка видалення | ок | ||||||||||||||||||||||||
44 | 2. Клік на кнопку для видалення видаляє рецепт зі списку улюблених, а також видаляє рецепт зі сторінки Favorite | ок | чи оновлюється локальний список улюблених рецептів при видаленні рецепта з бази (наприклад, якщо адміністратор видалить рецепт із системи). | |||||||||||||||||||||||
45 | 3. По клiку на See recipe, відкривається сторінка рецепту страви | ок | ||||||||||||||||||||||||
46 | Сторінка обраного рецепта | Сторінка обраного рецепта | Сторінка обраного рецепта | |||||||||||||||||||||||
47 | 1. Сторінка одного рецепта мiстить: - назва рецепту - опис рецепту, якщо є - кнопка Add to favorite recipes - час приготування, якщо є - блок Інгрідієнти, що містить * назву інгрідієнта * зображення нгрідієнта, якщо є, або заглушка * к-ть інгрідієнта * чекбокс - Додати до списку покупок (Add to list) - блок Recipe Preparation, де вказана послідовність приготування страви - картинку рецепту або заглушку | Відсутня можливість редагувати доданий рецепт. | Варто додати відповідну кнопку, оскільки велика ймовірність виникнення помилок при створенні рецепту. | Зображення інгредієнтів занадто великі , натомість шрифт для кількості інгредієнтів дуже дрібний. | ||||||||||||||||||||||
48 | 2. По натисканні на кнопку Add to favorite, рецепт потрапляє на сторінку Favorites | ок | ||||||||||||||||||||||||
49 | 2.1. Якщо такий рецепт вже є в списку улюблених, то на місці Add to Favorite повинна бути кнопка Remove From Favorite, клік по котрій видаляє рецепт зі списку улюблених | ок | ||||||||||||||||||||||||
50 | 3. Клік по чекбоксу додає в список покупок інгредієнт та його к-сть, після чого в чекбоксі з'являється галочка. При повторному натисканнi, галочка зникає, інгредієнт видаляється зi списку покупок | ок | ||||||||||||||||||||||||
51 | Сторінка My recipes | Сторінка My recipes | Сторінка My recipes | |||||||||||||||||||||||
52 | 1. Сторінка My recipes містить список карток з описами рецептів, створених користувачем. Кожна картка повинна мати: - заголовок з назвою страви/рецепту - час приготування - фонове зображення самого рецепту або якщо воно відсутнє - фон такий як у футера - кнопку видалення, яка видаляє елемент зі сторінки - кнопку See recipe реалізовану лінком, що редіректить користувача на сторінку з описом рецепту | ок | Додати можливість редагувати свої рецепти | Не відображається категорія рецепта, хоча вона вказується при заповненні нового рецепта. Уточнити, що саме в ТЗ мається на увазі під "фотнове зображення самого рецепту". Згідно макету. - це фото рецепта. | ||||||||||||||||||||||
53 | 2. По клiку на кнопку видалення, елемент зникає зі сторінки | ок | Якщо користувач видалить всі свої рецепти, відображається заглушка або повідомлення? | |||||||||||||||||||||||
54 | 3. По клiку See recipe, вiдкривається Сторінка обраного рецепта | ок | ||||||||||||||||||||||||
55 | Сторінка Search | Сторінка Search | Сторінка Search | |||||||||||||||||||||||
56 | 1. Сторінку з пошуком по ключовому слову мiстить - блок форми пошуку, що включає * поле для введення значень для пошуку * кнопка Search * перемикач, який пропонує опції налаштування пошуку за назвою, або за інгредієнтами - список рецептів (карток з прев'ю) по обранному значенню для пошуку | Не зазначено, як поводиться додаток, якщо перемикати опції пошуку без заповнення поля пошуку | Додати можливість перемикати опції пошуку до заповнення поля пошуку | |||||||||||||||||||||||
57 | 2. По клiку на кнопку Search виконується новий пошук кожного разу коли змінюється значення одного з параметрів. Якщо відсутнє будь-яке значення параметрів, запит не відбувається. В результаті: - успішного запиту - картки рецептів оновлюються згідно з зазначеними критеріями пошуку - помилки - картки рецептів зникають і користувачу виводиться відповідне пуш-повідомлення. | Потрібно додати текст пуш-повідомлення у разі помилки пошуку | ||||||||||||||||||||||||
58 | 3. Картка прев'ю рецепту містить фото, якщо немає - заглушка, та назву рецепту | ок | ||||||||||||||||||||||||
59 | 3.1. По клiку на прев'ю обраного рецепту, відкривається сторінка рецепту страви | ок | ||||||||||||||||||||||||
60 | Сторінка Shopping list | Сторінка Shopping list | Сторінка Shopping list | |||||||||||||||||||||||
61 | 1. Сторінка Shopping list мiстить список елементів з інгредієнтами до покупки та заголовок до цього списку. Кожен елемент списку має: - зображення інгредієнту або плейсхолдер - к-сть в відповідних одиницях виміру - кнопку для видалення елементу зі списку | Не зазначено як оновлюється кількість інгредієнта в списку, якщо він уже доданий - сумується чи створюється окремий рядок. Відсутня можливість фільтрувати або сортувати список. Бажано б мати можливість бачити для якого рецепту був доданий інгридієнт | Після перевірки доданих інгредієнтів в "Лист покупок", відсутня кнопка повернення на попередню сторінку. | |||||||||||||||||||||||
62 | 2. Клік по кнопці видалення повинен видалити елемент зi в списку на сторінці. | "зі в списку" замінити на "зі списку" | Відсутня можливість видаляти відразу все, або за фільтром | |||||||||||||||||||||||
63 | Футер | Футер | Футер | |||||||||||||||||||||||
64 | 1. Компонент Footer мiстить: - логотип - блок інформації про додаток - блок навігації, що мicтить категорії * Ingridients - переадресовує на сторінку Search Page з встановленим на сторінці за замовчуванням типом пошуку по інгредієнтах. * Add recipes - переадресовує на сторінку додавання рецепту * My recipes - переадресовує на сторінку доданих рецептів користувачем * Favorite - переадресовує на сторінку обраних рецептів * Shopping list - переадресовує на сторінку зі списком покупок - блок форми підписки - блок Follow us, що мiстить список елементів з посиланнями на соцмережі | На мобільній версії немає блоку інформації про додаток | Варто уточнити це в ТЗ | |||||||||||||||||||||||
65 | 2. Блок форми підписки мiстить - поле для вводу емейла користувача - кнопка відправки Subscribe. | Ок | ||||||||||||||||||||||||
66 | 2.1 Поле для вводу повинно валідуватись на коректний емейл. Якщо емейл в полі відсутній, кнопка не активна. Якщо емейл не валідний, користувач отримує відповідне пуш-повідомлення. | Ок | передбачена перевірка на дублювання email? | |||||||||||||||||||||||
67 | 2.2 По сабміту форми, емейл відправляється і користувач підписується на розсилку новин. | Ок | Пункт 2.2 треба відредагувати. "По сабміту форми" змінитити на "Після заповнення форми" | |||||||||||||||||||||||
68 | *додаткове завдання: Мотивацiйнi модалки | *додаткове завдання: Мотивацiйнi модалки | *додаткове завдання: Мотивацiйнi модалки | |||||||||||||||||||||||
69 | 1. Модалки мотиваційного повідомлення з'являютья по досягненню юзера: - певної кількості відвідин сайту - певної к-сті доданих рецептів - певної к-сті використання інтерфейсу(наприклад першого створеного списку покупок) і т.д. | Відсутня конкретика в ТЗ. Мотивалки можна перевірити лише на бекенді. | Додати умови по досягненню яких повинні з'являтися мотиваційні модалки | Було б цікаво, якщо б улюблені рецепти користувачів, після додавання до розділу "Улюлені рецепти", відображались якость особливо. | ||||||||||||||||||||||
70 | 2. Модалка повинна показувати: - картинку - назва досягнення - мотиваційний текст | Прописати досягнення та мотиваційний текст | ||||||||||||||||||||||||
71 | 3. Модалка може бути закрита по кліку на бекдроп, за натисканням на кнопку Закрити та за натисканням кнопки ESC | ок | ||||||||||||||||||||||||
72 | ||||||||||||||||||||||||||
73 | ||||||||||||||||||||||||||
74 | ||||||||||||||||||||||||||
75 |