GithubHelp home page GithubHelp logo

vedovelli / curso-javascript-testes-modulo-4 Goto Github PK

View Code? Open in Web Editor NEW
20.0 4.0 9.0 232 KB

Código-fonte do módulo 4 do curso "Aprenda a Testar Aplicações Javascript" - Desenvolvimento de API com Expressjs

Home Page: https://javascript.tv.br

JavaScript 99.84% Shell 0.16%
javascript nodejs expressjs rest-api jest jest-tests

curso-javascript-testes-modulo-4's Introduction

API REST com Express

Arquitetura

Este projeto é parte integrate do curso Aprenda a Testar Aplicações Javascript (https://javascript.tv.br) e dá suporte ao módulo 4: desenvolvimento e testes server side com Node.js e Express.

Ferramentas Base

O projeto utiliza Express.js (https://expressjs.com/en/starter/installing.html) para roteamento e controle de requisições HTTP e Sequelize ORM (https://sequelize.org/master/) para interface com o banco de dados. Para manter a configuração o mais simples possível, o banco de dados escolhido foi o SQLite porém, como explicado em /src/database/models/index.js a troca de banco de dados é muito simples, tendo como único pré-requisito o suporte dentro do ORM (Sequelize).

Testes

O projeto já conta com o Jest como test runner e 3 scripts npm estão a disposição para executar os testes em modo watch ou com a geração do relatório de coverage.

O branch master não contém qualquer teste pois é o ponto de partida para as aulas. Você pode no entanto escrever seus testes e nomear os arquivos com .spec.js ou .test.js e o Jest fará seu trabalho.

Logs

O gerenciamento de logs está a cargo do Winston e dois de seus transportes estão habilitados: console e file. Mais transportes podem ser adicionados sob demanda.

Instalação e execução

Pré-requisito: Node versão 12+.

  1. Faça o clone do repositório e utilizando o Terminal execute npm install ou yarn;
  2. Copie o .env.example para .env e mantenha seu conteúdo;
    • Este arquivo faz parte do .gitignore e não deve ser enviado para o controle de versão, pois contém informações pertinentes ao seu ambiente local e, possivelmente, dados sensíveis.
  3. Execute npm run dev ou yarn dev para executar o servidor, que estará disponível na porta 3000. Caso deseje mudar a porta faça isso no arquivo .env;
  4. Utilize o arquivo encontrado em /support para carregar as requisições HTTP usadas para testar manualmente a API. O arquivo funciona no aplicativo Insomnia (https://insomnia.rest/), Paw (https://paw.cloud/) ou Postman (https://www.postman.com/).

curso-javascript-testes-modulo-4's People

Contributors

vedovelli avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  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.