Тестовые задания по Python

Здесь собраны реальные тестовые задания, которые дают соискателям на стажировках и junior-позициях. Эти задания помогут лучше подготовиться к отбору, потренироваться и пополнить портфолио

стэк>
Компания>
Сложность>

KazanExpress • Средняя сложность

Средний уровень сложности - 2 звезды

Тестовое задание по Python от компании KazanExpress

KazanExpress test for Python developer Here lies the description and requirements of the test task for Python/Django Developer position applicants. Task goal The goal of this test task is to develop a simple Django admin panel which purpose is to manage the content for an online store and to have multi-role support. Domain description The following image represents the class diagram that should be considered during development of your admin panel. This is the minimal requirements for classes and fields that we are expecting from you to add. You can make your own updates and add additional functional. All images fields should be represented as links on images. You are free to use any database, which seems suitable for you and for the project. ![Class diagram](https://hb.bizmrg.com/kazanexpress/class_diagram.png) Requirements Shop admin 1. Navigate through the shops list. 2. Make a search by title. 3. Edit everything except shop id. 4. Upload image as shop pic. Product admin 1. Navigate through product list. 2. Search by id or product title. 3. Edit everything except product id. 4. First image should be displayed as main image in both list view and product view. 5. Sort products in product list by number of orders and by price. 6. Filter list of products by active flag. 7. Filter by price range. 8. Attach product to one or more categories. Category admin 1. Navigate through categories list. 2. Search by product id, title and parent category. 3. Add one or more parent categories. 4. Display all possible paths to chosen category. Management There should be at least two administrative roles for the following purposes: 1. Moderation for products. 2. Moderation of all available pages. Submission Fork this repository, prepare your solution and make a pull request when you're done. Don't forget to write docs :) Good luck!

SoftwareTester • Лёгкая сложность

Лёгкий уровень сложности - 1 звезда

Тестовое задание по Python от компании SoftwareTester

[![Python 3.10.10](https://img.shields.io/badge/python-3.10.10-blue.svg)](https://www.python.org/downloads/release/python-31010/) На данный момент отбор на стажировку завершен. How to run app 1. up DB and broker ```shell docker compose up -d --build ``` 1. install requirements 2. export env variables ```shell export $(grep -v '^#' .env | xargs) ``` 4. Create DB tables and fill_handbooks ```shell python manage.py alchemy_create api python manage.py fill_handbooks ``` 5. up app ```shell python manage.py runserver ``` 6. up celery ```shell celery -A core.celery_config worker -l INFO ``` 7. Check everything is ok ```shell curl --location 'http://127.0.0.1:8000/api/auth/auth/' \ --header 'Content-Type: application/json' \ --data-raw '{ "engine": "email", "credentials": { "email": "super_admin@example.com", "password": "StrongPass777" } }' ``` Example response ```shell { "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoiMjQxNzE1YzMtY2UxMi00MTYxLTgwZGEtYmFlYmUwYzU5MGE5IiwiZXhwIjoxNjg1ODIyMjg1fQ.o45cS8Upwz562l5XNmgzaOMz3mZUe0dr8Ea7LnM_lxM", "user": { "time_created": 1685562975, "time_updated": 1685562975, "user_id": "241715c3-ce12-4161-80da-baebe0c590a9", "user_type": "SUPER_ADMIN", "email": "super_admin@example.com", "is_email_confirmed": true, "last_name": "super", "first_name": "admin", "is_confirmed": true, "is_blocked": false } } ``` How to run tests 1. install requirements-dev.txt 2. run tests ```shell pytest tests ``` Что надо сделать 1. Скачать .zip файл себе данный репозиторий 2. Наполнить тестами на свой вкус (желательно не тратить на это больше 1-2 дней) 3. Прислать ссылку на свой репозиторий Приветствуется, но не обязательно: 1. использование параметризации тестов 2. использование моков 3. тесты значений в БД 4. тесты celery таски 5. организовать запуск тестов параллельно (по числу ядер на машине) 6. рефакторинг \ исправление ошибок в коде

UpTrader • Средняя сложность

Средний уровень сложности - 2 звезды

Тестовое задание по Python от компании UpTrader

Задача : Нужно сделать django app, который будет реализовывать древовидное меню, соблюдая следующие условия: 1) Меню реализовано через template tag 2) Все, что над выделенным пунктом - развернуто. Первый уровень вложенности под выделенным пунктом тоже развернут. 3) Хранится в БД. 4) Редактируется в стандартной админке Django 5) Активный пункт меню определяется исходя из URL текущей страницы 6) Меню на одной странице может быть несколько. Они определяются по названию. 7) При клике на меню происходит переход по-заданному в нем URL. URL может быть задан как явным образом, так и через named url. 8)На отрисовку каждого меню требуется ровно 1 запрос к БД Нужен django-app, который позволяет вносить в БД меню (одно или несколько) через админку, и нарисовать на любой нужной странице меню по названию. {% draw_menu 'main_menu' %} При выполнении задания из библиотек следует использовать только Django и стандартную библиотеку Python. При решении тестового задания у вас не должно возникнуть вопросов. Если появляются вопросы, вероятнее всего, у вас недостаточно знаний. Задание выложить на гитхаб.

UpTrader • Средняя сложность

Средний уровень сложности - 2 звезды

Тестовое задание по Python от компании UpTrader

Places Remember Скачать .zip файл Цель Создать веб-приложение, с помощью которого люди смогут хранить свои впечатления о посещаемых местах. Описание задачи Пользователь заходит на сайт и видит страницу с кратким описанием сервиса. Также, он замечает кнопки “Войти с помощью Google” (или VK, на Ваше усмотрение), нажимая на которую Google/VK предлагает ему разрешить доступ к его базовой информации. Он разрешает доступ, после чего должна открыться страница. В ее шапке будет имя и фотография (информация взята из профиля Google/VK), по центру страницы надпись “У вас нет ни одного воспоминания”, кнопка “Добавить воспоминание” (ее расположение на ваше усмотрение), при нажатии на которую должна открываться форма с возможностью указания места на карте, а также поле для ввода названия и поле для ввода комментария об этом месте. Далее пользователь может нажать на кнопку “Сохранить”, после чего он снова попадает на домашнюю страницу со списком из этого элемента и возможностью добавлять новые места. Весь добавленный список мест будет отображаться на домашней странице. На домашней странице пользователя также есть кнопка, позволяющая ему выйти из своего аккаунта. После выхода он должен попасть на приветственную страницу сервиса без возможности видеть список посещаемых мест. При повторной авторизации через Google/VK пользователь снова видит все свои добавленные места. Требования к реализации: - Приложение должно быть реализовано на базе фреймворка Django. - Оформление кода должно соответствовать стандартам (PEP8, Django coding style) - Все используемые зависимости должны быть актуальными на момент создания проекта. - С самого начала разработки необходимо использовать git, а также следовать стилю коммитов: https://chris.beams.io/posts/git-commit/. Исходный код приложения должен быть размещён на github. - Основной функционал (создание впечатлений о посещаемых местах и получение их списка) должен быть покрыт юнит-тестами. - Возможно использование любых сторонних пакетов, для стилей рекомендуется использовать bootstrap. - Если что-то не удалось сделать, необходимо описать проблемы в файле README.md Будет плюсом: - Запуск тестов при новых коммитах реализован с использованием github actions. - Локальный запуск через docker/docker-compose - В README проекта есть бейдж с текущим покрытием тестами (https://coveralls.io/). - Сконфигурированные правила для линтеров, запуск линтеров при коммите/пуше/github actions Приложение запускается на одном из облачных сервисов

Получите доступ более чем к 500 тестовым заданиям
Сервис можно использовать бесплатно,
без ограничений. Чтобы получить полный доступ,
вам необходимо зарегистрироваться.
1
...
345
...
15
где найти тестовые задания для практики
пример тестового задания junior
тестовые задания для junior python
практические задачи по python
решение тестового задания python