Status do projeto: Finalizado 🙌
A sprint 4 vem propor uma série de estudos e projetos para que seja possível aprender e colocar em prática tecnologias como: git, github, JavaScript, JS KOANS, TDD, Mocha e Chai.
[x] Sistema git
para versionamento de arquivos;
[x] Platafroma e ferramentas Github
;
[x] Linguagem de programação JavaScript
;
[x] KOANS-JS
- Aprendizado sobre refatoração e testes automatizados;
[x] TDD
- Teste Driven Development
[x] Bibliotecas Mocha
e Chai
;
- Nome do repositório, branches e commits diários;
- Organização das pastas, arquivos e código;
- O README.md contendo as informações do projeto;
- Instalação e funcionamento dos códigos;
- Métodos robustos na classe calculadora.js;
- Arquivo(s) de teste com testes eficientes;
- Nome das variáveis e métodos;
- Plágio!
No desenvolvimento dessa sprint você precisará de uma conta no Github , do sistema de versionamento Git e um editor de código, nesse caso foi utilizado o VSCode .
- Git: https://git-scm.com/downloads
- Github: https://github.com
- VSCode: https://code.visualstudio.com/download
Para construção do projeto foram utilizadas as seguintes tecnologias:
Utilizando as tecnologias mocha e chai, foi desenvolvido uma calculadora com base no Desenvolvimento Orientado por Testes (TDD)
O TDD ou Desenvolvimento Orientador por Testes se baseia em pequenos ciclos de repetições, onde para cada funcionalidade do sistema um teste é criado antes. O ciclo de desenvolvimento do TDD se baseia em:
- Escrever um teste que inicalmente não passa
- Adicionar uma nova funcionalidade ao sistema
- Fazer o teste passar
- Refatorar o código da nova funcionalidade
- Escrever o próximo teste
Mocha é um Framework JavaScript que permite realizar suites de teste de forma rápida e fácil.
Chai é uma biblioteca baseada em BDD/TDD que pode ser combinada com qualquer Framework de testes Java.
- Crie uma pasta vazia onde desejar e dentro da pasta, com o botão direito do mouse, inicie o terminal de comando Git Bash
- No terminal digite
npm init -y
para que seja inicializado o arquivopackage.json
. Feito isso, abra-o no VSCode colocando no terminal o comandocode .
- Aberto o arquivo, você irá notar uma série de comandos. Abaixo da linha onde está escrito
main
adicione o"type":'module'
, com isso o projeto poderá ser executado com comandos do NodeJS - Na parte superior do VSCode você irá encontrar o
Terminal
, clique nele e abra umNovo terminal
. Note que apareceu uma telinha abaixo da janela do package.json. - Nessa tela digite
npm i -D mocha chai
, esse comando irá instalar todas as bibliotecas e comandos do mocha e chai - Voltando para janela do packege, você encontrará o
test
, substitua a instrução que está após o test por"mocha"
e salve
-
Crie uma pasta com nome
test
e nela crie o arquivocalculadora.spec.js
, nele iremos colocar todos os nossos testes -
Crie também uma pasta
src
e nela crie o arquivoCalculadora.js
, onde será feito todo nosso código da calculadora. -
No arquivo
Calculadora.js
digite a função da calculadora que você deseja testar, como por exemplo:export default class Calculadora { static soma(a, b){ return a + b } }
-
E dentro do arquivo
calculadora.spec.js
elabore o teste que deseja ser feito, por exemplo:import assert from 'assert' import chai, { expect} from 'chai' import Calculadora from '../src/Calculadora.js' describe('Testes de soma', () => { it('Deve somar 8 e 9 resultando em 17', () => { let resultado = Calculadora.soma(8, 9) expect(resultado).to.be.eq(17) resultado.should.be.a('number') }) })
-
Para verificar o resultado do teste, abra o terminal e digite
npm test
, aguarde alguns segundos e ele irá retornar se seu teste passou ou não. Caso o teste não passe, ele dará algumas dicas de onde se econtra o erro.
A elaboração desse repositório não seria possível sem o auxílio de:
Rafaella Ballerini com seus vídeos
Jhonatan com os vídeos
- Curso de git e github
- JavaScript em 4h e 35min! (Incrivelmente bom! Mas não se iluda com as 4h.. elas podem virar 8h muito fácil)
Os sites com conceito de mocha, chai e TDD