Giter Site home page Giter Site logo

marcoviana0303 / project-inventory-report Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 23 KB

Neste projeto, desenvolvi um gerador de relatórios. O objetivo é receber arquivos contendo informações sobre um estoque específico e, em seguida, produzir um relatório abrangente com base nesses dados.

Dockerfile 0.45% Python 99.55%
pytest python

project-inventory-report's Introduction

Projeto Inventory Report

Observação

Neste projeto, desenvolvi um gerador de relatórios. O objetivo é receber arquivos contendo informações sobre um estoque específico e, em seguida, produzir um relatório abrangente com base nesses dados. Esses dados de estoque poderão ser obtidos de duas fontes:

Através da importação de um arquivo CSV;

Através da importação de um arquivo JSON;

Além disso, o relatório final possuirá duas versões: simples e completa.


📝 Habilidades trabalhadas
  • Aplicar conceitos de Programação Orientada a Objetos em Python;
  • Implementar leitura e escrita de arquivos CSV e JSON em Python;

Para rodar a aplicação, irá precisar de: Git, VS Code, Node.js e NPM.


Clone o projeto

git clone [email protected]:MarcoViana0303/project-inventory-report.git

Entre no diretório do projeto

cd project-inventory-report

🏕️ Ambiente Virtual
O Python oferece um recurso chamado de ambiente virtual, onde permite sua máquina rodar sem conflitos, diferentes tipos de projetos com diferentes versões de bibliotecas.
  1. criar o ambiente virtual
python3 -m venv .venv
  1. ativar o ambiente virtual
source .venv/bin/activate
  1. atualize o pip
python3 -m pip install --upgrade pip
  1. instalar as dependências no ambiente virtual
python3 -m pip install -r dev-requirements.txt

Com o seu ambiente virtual ativo, as dependências serão instaladas neste ambiente. Quando precisar desativar o ambiente virtual, execute o comando deactivate. Lembre-se de ativar novamente quando voltar a trabalhar no projeto. O arquivo dev-requirements.txt instalará todas as dependências que serão utilizadas no projeto, ele está agindo como se fosse um package.json de um projeto Node.js. Se você desejar instalar uma nova dependência, basta adicioná-la no arquivo dev-requirements.txt e executar o comando python3 -m pip install -r dev-requirements.txt novamente. Se o VS Code não reconhecer as dependências instaladas no ambiente virtual criado, será necessário informar o caminho do interpretador Python. Para isso, abra o VS Code e pressione Ctrl + Shift + P (no Mac, Cmd + Shift + P) e digite Python: Select Interpreter. Selecione o interpretador que possui o caminho ./.venv/bin/python no nome.


🛠 Testes
Para executar os testes certifique-se de que você está com o ambiente virtual ativado. Executar os testes
python3 -m pytest

O arquivo pyproject.toml já configura corretamente o pytest. Entretanto, caso você tenha problemas com isso e queira explicitamente uma saída completa, o comando é:

python3 -m pytest -s -vv --continue-on-collection-errors

O pytest possui diversos parâmetros que podem ser utilizados para executar os testes de diferentes formas. Alguns exemplos são:

python3 -m pytest tests/test_nome_do_arquivo.py  # Executa todos os testes do arquivo de testes especificado
python3 -m pytest tests/test_nome_do_arquivo.py::test_nome_do_teste  # Executa apenas o teste especificado
python3 -m pytest -k expressao  # Executa apenas os testes que contém a expressão informada como substring
python3 -m pytest -x  # Executa os testes até encontrar o primeiro erro

Feedback

Encontrou algum erro ou está com alguma dúvida? Não deixe de entrar em contato comigo!

🔗 Links

linkedin gmail portfolio

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.