Code Monkey home page Code Monkey logo

test-medianation's Introduction

Тестовое задание для компании MediaNation

Описание

Демо: http://medianation-test.strilchuk.ru/
Проект представляет собой веб-приложение, предназначенное для быстрого тестирования навыков работы с HTTP-запросами, а также для проверки результатов и сбора контактных данных.

Проверка работы

Для успешного прохождения теста в каталоге с проектом присутствует скрипт testrequest_my.sh. Данный скрипт отправляет запрос, который проходит тестирование.

  1. Повторена базовая функциональность
  2. Добавлены пункты проверки user-agent и Authorization Basic
  3. Добавлено логирование попыток прохождения
  4. Собираются контактные данные успешных соискателей
  5. Добавлена административная панель для проверки тестирования и просмотра контактных данных

Маршруты

  • GET / - корневой маршрут. Сразу перекидывает в /test;
  • ANY /test - Основной маршрут для тестирования. Обрабатывает все доступные типы запросов.
  • GET /welcome/{mark?} - Маршрут для сбора контактных данных. Ссылка на данный маршрут становится доступной после успешного прохождения теста и находится в результатах тестирования. Параметр mark - уникальный идентификатор успешно пройденного результата тестирования, привязанный к ip-адресу тестируемого. Если не указан, то перекидывает на /test;
  • POST /welcome/{mark?} - маршрут для сбора контактных данных. Отправляется из формы сбора контактных данных;
  • GET /login - маршрут возвращает форму авторизации в административной панели.
  • POST /login - маршрут принимает параметры для входа и устанавливает cookie со значением hash суммы логина и пароля. Отправляется из формы авторизации;
  • GET /exit - маршрут для выхода из учетной записи администратора.
  • GET /statistic - маршрут для просмотра собранных данных о прохождении теста и контактных данных соискателей. Если нет авторизации, то перкидывает на /login.

Данные для входа

По умолчанию административная учетная запись имеет параметры:
Логин admin
Пароль powerover321
Данные параметры можно изменить в файле .env.

Логирование

Файл логов доступен по адресу storage/logs/laravel.log, в него попадают данные обо всех входящих http-запросах, относящихся к тестированию.

Развертывание

Для развертывания проекта нужно выполнить следующие действия:

  1. Склонировать репозиторий и перейти в каталог с проектом
    git clone https://github.com/strilchuk/medianation-test.git
    cd medianation-test
  2. Установить зависимости с помощью Composer
    composer install
  3. Скопировать и заполнить подключение к базе в файле .env
    cd .env.example .env
  4. Выполнить миграции для создания необходимых таблиц php artisan migrate

Используемые фреймворки

  • Laravel

test-medianation's People

Contributors

strilchuk avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.