Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/feronivan/yandex.scooter_web-app_mqa
Веб-приложение “Яндекс.Самокат”. Проект по ручному тестированию.
https://github.com/feronivan/yandex.scooter_web-app_mqa
bug-reporting manual-testing test-analysis test-design webapp
Last synced: about 1 month ago
JSON representation
Веб-приложение “Яндекс.Самокат”. Проект по ручному тестированию.
- Host: GitHub
- URL: https://github.com/feronivan/yandex.scooter_web-app_mqa
- Owner: feronivan
- Created: 2024-08-14T16:46:00.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2024-09-11T14:31:20.000Z (4 months ago)
- Last Synced: 2024-09-11T21:57:53.312Z (4 months ago)
- Topics: bug-reporting, manual-testing, test-analysis, test-design, webapp
- Homepage:
- Size: 46.9 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## Веб-приложение “Яндекс.Самокат”. Проект по ручному тестированию.
Яндекс.Самокат — сервис, который позволяет арендовать электрический самокат на несколько дней.## Требования
Требования к веб-приложению
### Поддерживаемые окружения
Приложение поддерживает эти браузеры: Яндекс.Браузер не ниже версии 20.0.1, Chrome не ниже версии 85. Будет поддерживаться разрешение экрана 1280x720 и 1920x1080.### Лендинг
Есть заголовок и чертёж самоката. При скролле происходит анимация: чертёж сменяется фотографией, появляется таблица с описанием самоката.
В шапке лендинга есть две кнопки: «Заказать», «Статус заказа».
Появляется запрос на согласие использовать куки.
Если доскроллить до третьего блока, появляется информация: «Как это работает», «Вопросы о важном».### Экран **«Сделать заказ»**
Чтобы сделать заказ, нужно заполнить две формы: «Для кого самокат», «Про аренду».
**Для кого самокат**
Поля: «Имя», «Фамилия», «Адрес: куда привезти самокат», «Станция метро», «Телефон: на него позвонит курьер».
Все поля обязательные. Если они не заполнены корректно, нельзя перейти на следующую страницу.
Внизу кнопка «Дальше»: она переводит на форму «Про аренду».
**Про аренду**
Поля: «Когда привезти самокат», «Срок аренды», «Цвет», «Комментарий».
«Когда привезти самокат», «Срок аренды» — обязательные поля.
«Цвет», «Комментарий» — необязательные.
**Кнопка «Назад».** При нажатии пользователь переходит на страницу «Для кого самокат». При переключении между страницами введённая информация сохраняется.
**Кнопка «Заказать».** Если все поля заполнены корректно, при клике по кнопке «Заказать» заказ будет оформлен. Появится всплывающее окно с текстом «Номер заказа NNNNN. Запишите его: пригодится, чтобы отслеживать статус» и кнопкой «Посмотреть статус». Кнопка «Посмотреть статус» ведёт на экран «Статус заказа»: в нём уже заполнено поле «Номер заказа».
Если не все обязательные поля заполнены корректно, при нажатии на кнопку «Заказать» появится ошибка «Введите корректный <имя поля>»**.**
Пользователь может сделать несколько заказов один за другим.### **Экран «Статус заказа»**
Если нажать на «Статус заказа» в шапке лендинга, появляется поле ввода «Номер заказа». Нужно ввести значение и нажать Enter. Если номер заказа введён корректно, появляется информация:
- Данные заказа пользователя: имя, фамилия, адрес и остальные. Для всех полей действует правило: если текст не умещается в одной строке, он переносится на вторую.
- Цепочка статусов заказа. Текущий статус выделен чёрным, остальные — серые. Если статус пройден, цифра перед ним сменяется на галочку.
Если номер заказа введён некорректно, появляется сообщение об ошибке: «Такого заказа нет. Точно верный номер?».
На экране статуса заказа четыре статуса. Активным может быть только один из них — он показывает, на какой стадии находится заказ:
- **«Самокат на складе»**. Становится активным, когда пользователь сделал заказ.
- **«Курьер едет к вам»**. Становится активным, когда курьер подтвердил у себя в приложении, что принял заказ. Когда статус активен, в подписи появляется имя курьера: «Курьер Фродо едет к вам». Если имя курьера слишком длинное и подпись не умещается в одну строчку, текст переносится на вторую строчку.
- **«Курьер на месте»**. Становится активным, когда курьер нажал кнопку «Завершить» у себя в приложении.
- **«Ну всё, теперь кататься»**. Становится активным, когда курьер подтвердил завершение заказа. Под заголовком статуса подпись «Аренда закончится...». Показываемое время рассчитывается от момента, когда самокат передали пользователю с учётом количества дней. Когда время аренды заканчивается, статус меняется на «Время аренды кончилось» с подписью «Скоро курьер заберёт самокат».
Пользователь может ввести номер другого заказа и посмотреть его статус.**Отмена заказа**
Есть кнопка «Отменить заказ». Если кликнуть по ней, появится всплывающее окно с текстом «Хотите отменить заказ?» На всплывающем окне две кнопки: «Отменить», «Назад».
Если кликнуть по «Назад», пользователь вернётся на страницу статуса заказа.
Если кликнуть по «Отменить», появится всплывающее окно с текстом «Заказ отменён. Возвращайтесь, мы всегда вас ждём :)» и кнопкой «Хорошо». Кнопка «Хорошо» ведёт на главную страницу лендинга.
Пользователь может отменить заказ, пока курьер не взял его в работу. Когда заказ уже у курьера, кнопка «Отменить заказ» будет некликабельной.
Отменённый заказ удаляется из системы. Пользователь не может его посмотреть.
**Просроченный заказ**
Заказ считается просроченным, если курьер не успел выполнить его вовремя. Например, пользователь заказал самокат на 1 января. Если 1 января самокат не доставлен до 23:59, этот заказ — просроченный.
Если заказ просрочен, его статус меняется на «Курьер задерживается», а подпись — на «Не успеем привезти самокат вовремя. Чтобы уточнить статус заказа, позвоните в поддержку: 0101». Статус и подпись подсвечиваются красным.
Если пользователю доставили просроченный заказ, отсчёт времени до конца аренды начинается с момента получения заказа.### Доработка фронтенда
В цепочку статусов добавлен пятый статус: «Время аренды кончилось»**.** Это фича, которую реализовали только во фронтенде, и бэкенд ещё не готов. ****Раньше этот текст появлялся на месте четвёртого статуса — в момент, когда время аренды заканчивалось. Теперь текст в четвёртом статусе не меняется: он просто становится серым, как и остальные статусы.
Пример ответа описан в документации к API в блоке *Orders — Получить заказ по его номеру.*
Номер нового статуса в запросе = 3.![Ограничение полей](https://github.com/user-attachments/assets/7982a334-e534-4968-9800-36f010a24dc0)
### FAQ
**Сколько это стоит? И как оплатить?**
Сутки — 400 рублей. Оплата курьеру — наличными или картой.**Вы привозите зарядку вместе с самокатом?**
Самокат приезжает к вам с полной зарядкой. Этого хватит на восемь суток — даже если будете кататься без передышек и во сне. Зарядка не понадобится.**Сможете привезти самокат прямо сегодня?**
Только начиная с завтрашнего дня. Но скоро станем расторопнее.**Хочу сразу несколько самокатов! Так можно?**
Пока что так: один заказ — один самокат. Если хотите покататься с друзьями, можете просто сделать несколько заказов.**Можно ли продлить заказ или вернуть самокат раньше?**
Пока что нет! Если что-то срочное — всегда можно позвонить в поддержку по номеру 0101.**Можно ли отменить заказ?**
Да, отменить можно, пока курьер не выдвинулся к вам с самокатом. Штрафа не будет, объяснительной записки не попросим.**Как рассчитывается время аренды?**
Допустим, вы оформляете заказ на 8 мая. Мы привозим самокат в эту дату до конца дня. Отсчёт времени аренды начинается с момента, когда вы оплатите заказ курьеру. Если мы привезли самокат 8 мая в 20:30, суточная аренда закончится 9 мая в 20:30.**Я живу за МКАДом, привезёте?**
Да, обязательно. Всем самокатов! И Москве, и Московской области.***
[Макеты веб-приложения Яндекс.Самокат](https://www.figma.com/file/vHgTVzFac8zyxhMZ2o4b2m/web)
## Проделанная работа:
1. Проанализированы требования.
2. Проведен тест-анализ и составлена диаграмма связей [mindmap](https://drive.google.com/file/d/1Cxtci7b4ozZSNwWIGSJqv0DydFHuL7rN/view?usp=sharing).
3. Составлен [чек-лист](https://docs.google.com/spreadsheets/d/1Z9-Jh_mKoHRGysu8acDu3R-dyWa0AHj47DUDDLqs3x4/edit?usp=sharing).
4. Выполнено функциональное тестирование.
5. Заведены [баг-репорты](https://veronivan.youtrack.cloud/issues?q=tag:%20%D0%B2%D0%B5%D0%B1-%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5) в YouTrack.## Инструменты