Test - Interesnee.ru

advertisement
Задание для тестировщика.
Протестировать сайт на предмет наличия несоответствий описанной ниже логике работы сайта.
Дополнительным плюсом будет нахождение визуальных дефектов (баги интерфейса
пользователя) в различных браузерах и проблем с безопасностью сайта (возможность XSS, SQL
injection и т.д.).
Сайт, подлежащий тестированию, состоит из двух частей: backend (это система управления
содержимым сайта) и frontend (то, что видит простой пользователь).
Backend URL: http://test.interesnee.ru/admin
Frontend URL: http://test.interesnee.ru
!!! The page is secured with password: team/interesnee
Реквизиты доступа (email/password):
I. Backend
 от имени администратора: admin@spggoods.com/admin
 от имени первого внешнего продавца (external vendor): firstvendor@spggoods.com/vendor
 от имени второго внешнего продавца (external vendor): secondvendor@spggoods.com/vendor
II. Frontend
 от имени администратора сайта: admin@spggoods.com/admin
 от имени главного поставщика (master distributor): master@distributor.com/master
Убедительная просьба! Во время выполнения задания не удаляйте, пожалуйста, чужие тестовые
данные, а используйте только свои.
Описание логики работы сайта.
I. Пользователи.
Всех пользователей сайта можно разделить на две группы: покупатели (Customers) и внешние
продавцы (External Vendors). Каждому покупателю присваивается одна из следующих ролей:
 Admin
 Manager
 Distributor
 Rep 517
 Rep 1k
 Coop Distributor
 Rep 100
 Rep 200
 Master Distributor
 Boost Field Rep
 Boost Territory Manager
 Boost Area Manager
 Local Marketing Manager
 Boost Merchandise Team
 SR Door
 Retailer.
Пользователь, обладающий ролью Admin, имеет абсолютные права на доступ к информации
сайта, т.е. он имеет доступ ко всем страницам сайта и может редактировать и удалять любую
информацию на сайте. Также этот пользователь имеет доступ в backend сайта.
Внешние продавцы (External Vendors) имеют доступ только в backend сайта. Они имеют права на
просмотр информации о продуктах (без возможности удаления и редактирования), которые они
продают, и о заказах, которые сделаны на их продукты. Информация о внешних продавцах
недоступна для редактирования и просмотра на сайте.
Остальные пользователи не имеют доступа в backend.
Пользователи с ролью Master Distributor могут быть связаны с несколькими пользователями типа
Distributor. Однако, если Мaster Distributor неактивен (имеет статус Inactive или Pending), тогда он
не может иметь дистрибьюторов.
Также неактивные пользователи не имеют доступ в frontend сайта.
II. Категории продуктов.
Каждый продукт должен быть привязан к определённой категории. Категории создаются и
редактируются в backend сайта. Категории могут быть вложенными. Всего возможны три уровня
вложенности. Категории первого уровня называются Store, и их количество всегда равно двум.
С каждой категорией связан один или более атрибутов. Атрибуты задаются на странице
добавления/редактирования категорий. Категории может быть присвоен уникальный URL,
перейдя по которому должен открываться список продуктов данной категории в frontend сайта.
III. Продукты.
Продукты создаются и редактируются в backend. Каждому продукту присваивается категория и
роли пользователей, которые могут просматривать этот продукт в frontend сайта.
Продукт может быть помечен как New. Для таких продуктов в frontend сайта в списке продуктов и
на странице деталей продукта показывается слово «NEW».
У продукта может быть один из двух статусов: Active и Inactive. Неактивные продукты не видны в
frontend сайта.
Продукт может иметь одно или более изображений и должен относиться к одному из пяти типов:
1. Стандартный (Standard) тип – такой продукт должен иметь фиксированную цену, вес, длину,
ширину и высоту и может быть куплен одним из двух основных способов (см. ниже). После
выбора категории для такого продукта должна появляться секция, где можно указать
значения атрибутов. Стандартный продукт должен содержать хотя бы один набор значений
атрибутов. При этом, для каждого набора значений атрибутов должен задаваться SKU
number, который является уникальным для всех наборов значений у всех продуктов.
2. Fixture тип – продукт этого типа имеет фиксированную цену и должен иметь хотя бы один
набор значений атрибутов. Купить такой продукт можно только одним способом: с
помощью кредитной карты (см. ниже). Также продукт этого типа может иметь сколько
угодно дополнительных продуктов типа Accessory. Fixture-продукт обязательно должен быть
привязан к одному внешнему продавцу.
3. Accessory тип – подобен Fixture (фиксированная цена, один или несколько наборов
значений атрибутов, привязка к внешнему продавцу), за исключением того, что данный
продукт должен быть привязан к одному или нескольким продуктам типа Fixture и может
быть куплен только после или во время покупки Fixture-продукта, к которому он относится.
Accessory продукты могут быть куплены только посредством кредитной карты.
4. Sign (fixed size) тип – продукт должен быть связан с внешним продавцом и иметь один или
несколько наборов значений атрибутов. Причём для каждого набора значений задаётся
своя цена, а также raceway. Если raceway выбран, то, при выборе соответствующего набора
значений, на странице деталей продукта в frontend должно появляться текстовое поле
raceway, значение которого будет добавлено к заказу в качестве комментария.
5. Sign (custom size) тип – продукт должен быть связан с внешним продавцом и не имеет
атрибутов вообще. Для такого продукта задаётся цена за один квадратный дюйм длины и
единственный SKU number. Реальная цена вычисляется на странице деталей продукта в
frontend по следующей формуле:
𝑃 = 𝑎 ∙ 𝑏 ∙ 𝑝,
где 𝑎 – высота, 𝑏 – ширина, 𝑝 – цена за один квадратный дюйм.
Эта вычисленная цена продукта будет добавлена к заказу в качестве комментария.
IV. Просмотр деталей продукта в frontend.
В frontend полную информацию о продукте можно увидеть на его странице деталей. На этой
странице также можно выбрать значения атрибутов и добавить продукт в корзину пользователя с
целью последующей покупки.
Для стандартных продуктов следует указать какой-либо набор значений атрибутов и количество
продукта в поле qty. Затем следует нажать кнопку «Add to Cart».
Для Fixture-продуктов: для того, чтобы добавить их в корзину, помимо выбора значений
атрибутов, необходимо заполнить форму Purchase Agreement.
Аналогично для продуктов типа Accessory. Но добавить в корзину такие продукты можно только
если там уже есть Fixture-продукт, с которым связан добавляемый Accessory. В противном случае
должно выводиться сообщение об ошибке: «You must first purchase a main product».
Для Sign (fixed size) продуктов также нужно выбрать значения атрибутов и заполнить Purchase
Agreement форму.
Для Sign (custom size) атрибуты отсутствуют, но вместо них требуется вводить значения ширины и
высоты, чтобы получить цену продукта. Так же обязательна для заполнения Purchase Agreement
форма.
Для всех типов продуктов, за исключением стандартных, количество всегда равно 1.
V. Добавление продуктов в корзину.
За один раз в корзине могут находиться только продукты одного типа (либо fixture продукт со
своими аксессуарами) и одного внешнего продавца (если это нестандартные продукты).
Если в корзине находится какой-либо продукт(-ы) нестандартного типа, то при попытке добавить
туда стандартный продукт должно появиться сообщение об ошибке: «Sorry, you need to complete
the current purchase».
При попытке добавить в корзину продукты внешнего продавца, отличного от внешнего продавца
продуктов в корзине, корзина должна очищаться.
VI. Покупка продуктов.
1. Покупка стандартных продуктов.
После того, как продукты добавлены в корзину, их можно купить, пройдя Checkout процесс.
Для стандартных продуктов необходимо выбрать метод доставки. Его цена будет
прибавлена к цене заказа. Купить стандартный продукт можно двумя способами: с
помощью кредитной карты и при помощи двух типов внутренних счетов – Budget или
Purchase Order (PO). Budget и PO могут быть заданы для каждого пользователя в backend
сайта на странице редактирования пользователя. Эти счета представляют собой простое
указание имени счёта и суммы на нём. При оплате с помощью этих счетов сумма заказа
будет списана с одного или нескольких выбранных счетов, в зависимости от стоимости
заказа. После оплаты заказа должно возникнуть сообщение: «Your order has been
successfully posted, check your email», и на email пользователя должно прийти письмо с
подтверждением оплаты, а в backend на странице списка заказов должен появиться только
что созданный заказ.
2. Покупка нестандартных продуктов (fixture, sign & accessory).
При покупке таких продуктов доступен только один способ оплаты – кредитная карта. При
этом сумма доставки заранее определена. Дело в том, что у каждого продавца США
разделены на 4 или 6 регионов (в зависимости от продавца), в которые объединены
несколько штатов, и сумма доставки в штаты одного региона фиксирована. После оплаты
стоимости заказа через кредитную карту на почту пользователя должно прийти письмо с
подтверждением заказа, а также должен сформироваться документ формата PDF с данными
из заполненной ранее формы Purchase Agreement. Оформленный заказ появляется в
backend в соответствующем списке. После покупки fixture-продукт блокируется, и становится
невозможным купить ещё один такой же продукт. Чтобы разблокировать купленный
продукт необходимо зайти на страницу редактирования пользователя и снять блокировку в
секции Unavailable fixtures.
Требования к оформлению результатов тестирования:
1. Каждый найденный баг должен быть зафиксирован в скриншоте или видео ролике с помощью
программы Jing (скачать можно отсюда http://jing.en.softonic.com).
2. Для каждого найденного бага должен быть указан тип браузера и его версия.
3. Если страница с багом недоступна неавторизованному пользователю, то необходимо указать
реквизиты для авторизации.
Download