Skip to content

AndreyStyuhin/SkyPro

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Домашняя работа Git

Инициализируйте новый локальный Git-репозиторий в папке проекта, используя команду git init .

Создайте файл .gitignore в корне проекта и добавьте в него стандартные шаблоны для Python, чтобы исключить системные и временные файлы, такие как pycache , .idea и другие. Для заполнения файла можете воспользоваться шаблоном.

Сделайте минимум три коммита в процессе разработки кода, фиксируя основные этапы создания вашего проекта. Например, первый коммит может быть фиксацией прогресса по прошлой домашке, второй — добавлением новых функций, третий — финальными изменениями и доработками.

В пакете src создайте новый модуль с именем widget . Этот модуль будет содержать функции для работы с новыми возможностями приложения.

В модуле widget создайте функцию mask_account_card, которая умеет обрабатывать информацию как о картах, так и о счетах.

Функция должна:

Принимать один аргумент — строку, содержащую тип и номер карты или счета. Аргументом может быть строка типа Visa Platinum 7000792289606361 , или Maestro 7000792289606361 , или Счет 73654108430135874305 . Разделять строку на 2 аргумента (отдельно имя, отдельно номер) нельзя!

Возвращать строку с замаскированным номером. Для карт и счетов используйте разные типы маскировки. Переиспользуйте уже существующие функции маскировки из вашего проекта, чтобы избежать дублирования кода.

В том же модуле создайте функцию get_date , которая принимает на вход строку с датой в формате "2024-03-11T02:26:18.671407" и возвращает строку с датой в формате "ДД.ММ.ГГГГ" ( "11.03.2024" ).

Продвинутый-Git

Продолжаем работу над виджетом банковских операций клиента. Выкладываем свой проект на GitHub и ведем разработку по GitFlow. Учитываем рекомендации PEP 8, продолжаем использовать линтеры и делаем атомарные коммиты.

My Bank Operations Project

Описание проекта

Проект предназначен для работы с банковскими операциями. В частности, содержит функции для:

  • фильтрации операций по статусу (filter_by_state),
  • сортировки операций по дате (sort_by_date).

Проект написан на Python и придерживается [GitFlow] для ведения разработки.

Установка

  1. Склонируйте репозиторий:
    git clone https://github.com/AndreyStyuhin/SkyPro.git
    

10.2 Тестирование.-Pytest

Продолжаем работу над проектом. Тестирование своего кода — важная часть разработки. Тестирование позволяет не только убедиться, что в коде нет ошибок, но и продумать архитектуру своего решения.

Контекст Тестирование кода играет важную роль в разработке программного обеспечения. Оно не просто помогает обнаруживать ошибки и проблемы в коде до того, как продукт будет выпущен, но также способствует высокому качеству и надежности программных решений.

Причины, почему регулярное и систематическое тестирование так важно:

  1. Обеспечение качества и надежности. Тесты позволяют убедиться, что код работает так, как ожидалось, и выполняет все свои функции без ошибок. Это особенно важно для финансовых и коммерческих приложений, над которым мы работаем, где ошибки могут привести к серьезным финансовым потерям или ущербу для репутации.
  2. Повышение уверенности при внесении изменений. Автоматизированные тесты предоставляют инструмент безопасности, позволяя разработчикам вносить изменения в код без страха случайно что-то сломать. При добавлении нового функционала, просто запустив тесты, можно убедиться в том, что весь предыдущий функционал работает как должен. Это особенно важно в больших и сложных системах.
  3. Ускорение процесса разработки. Несмотря на то что написание тестов требует времени, оно на самом деле ускоряет разработку за счет снижения количества времени, затрачиваемого на отладку и исправление ошибок в будущем. Тесты также делают изменение и обновление кода более безопасными и предсказуемыми.
  4. Обеспечение совместимости и соответствия. Регулярное тестирование помогает гарантировать, что изменения в одной части системы не нарушают функциональности в других частях.

Таким образом, тестирование является неотъемлемой частью процесса разработки и помогают поддерживать высокий уровень качества вашего приложения

Запустить тесты можно командой:

    pytest --cov=src --cov-report=html
    poetry run flake8
   poetry run mypy

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages