Shop. Тестовый Магазинчик
Магазинчик — http://shop.bugred.ru/
Тестовый пользователь: test@mail.com / 1
База данных:
https://46.36.217.134:8888/phpmyadmin/sql.php?server=1&db=shop_bugred_r_db&table=items&pos=0
view_user / ZQl3Ea1uhHTzzl3j
Набор фоточек для товаров — готовые тестовые данные
Что это за приложение
Shop — это бесплатное приложения для тестирования. Тут вы можете потренироваться в тест-дизайне или набить руку в REST и SOAP запросах. А еще вы можете заглянуть в БД, и проверить, что новый товар действительно был создан или удален!
Особенности приложения, ради которых оно и создавалось:
Загружать файл через BASE 64, а не файликом (доступно в методе create)
А в остальном это обычный интернет-магазинчик
Доступная документация
Я выложила ТЗ ровно в том виде, по которому работал разработчик. Да, это не эталонное ТЗ, его можно и нужно улучшать, чтобы не огребать потом кучу исправлений. Но в таком виде ТЗ тоже вполне может быть. И по нему, да-да, тоже можно тестировать!! А не нос воротить «тут поиск почти не описан, я не могу его тестировать тогда!». Учитесь работать с тем, что есть
Например, в rest-методах мне были важны входные параметры и логика работы. А вот выходные параметры я особо не описывала, смотрела по факту. Такой вариант реализации тоже имеет место быть. Итак, ваше ТЗ:
Пользователь test@mail.com ничем не примечателен, сверхправ у него никаких нет. Это просто если лень самим регистрироваться. Плюс если многие будут использовать именно его, то в нем будет копиться история. А это тоже важно — тестировать пользователя с большой историей. Правда, я могу в любой момент дропнуть базу, ну уж сорян. придется снова набивать историю))
История создания Shop
Исходно я создала систему Users для своих курсов. Там тоже есть целая куча разных возможностей, в том числе SOAP и REST API.
Например, там есть метод AddAvatar, который позволяет загружать файл через Postman! И мы эту возможность обязательно щупаем на курсе по тестированию REST API. Так вот, студенты порой пытаются запихать в этот метод картинку в формате base 64 и спрашивают, должно ли оно работать. Не должно, если разработчик не сделал поддержку такой возможности. В Users такой возможности нет. И я не смогла найти бесплатное API, где это можно было бы пощупать-потыкать. Добавила в список хочушек к юзерс — делать одну доработку слишком дорого, поэтому я собираю разные мелкие «хочу» и потом иду к разработчику.
А потом мне Алексей Баранцев рассказал, что в некоторых компаниях абсолютно всё делают через Postman. В том числе общаются в базой данных! Используя, например, https://github.com/prest/prest.
И вот тут я загорелась идеей сделать такую штуку себе! Чтобы общаться с базой через REST. Круто же! И студентам показать можно, как это бывает. Сначала я хотела добавить такую возможность в Юзерс, но… Знаете же, как это бывает? В одном месте починил, в 10 других сломал. А мне полный ретест делать очень больно, ведь там ни автотестов, ничего. Да и в базу Юзерс пускать не хочется, а если разломают? У меня ведь сразу куча курсов “встанет”. Нет, безопаснее сделать отдельное приложение. Я давно подумывала о магазинчике. Заказ пиццы или онлайн-шоппинг, что-то такое. Ну вот и решилась)) base 64 тоже сюда перенесла, опять же, чтобы в Юзерс не разломать что-то, добавив новую фичу.
Так и появился этот интернет-магазинчик! Он сделан для моего курса «Автоматизация тестов для REST API при помощи Postman», но и вы тоже можете пощапать селектики через Postman