Apresentação jasmine
-
Upload
rangel-javier -
Category
Documents
-
view
521 -
download
3
description
Transcript of Apresentação jasmine
![Page 1: Apresentação jasmine](https://reader035.fdocuments.net/reader035/viewer/2022081821/548058f45806b5d15e8b4a07/html5/thumbnails/1.jpg)
Behavior Driven Development framework for testing JavaScript code
![Page 2: Apresentação jasmine](https://reader035.fdocuments.net/reader035/viewer/2022081821/548058f45806b5d15e8b4a07/html5/thumbnails/2.jpg)
Definição
Jasmine é um framework de
desenvolvimento de testes orientados a
comportamento para testar código
JavaScript. Ele não depende de quaisquer
outras estruturas JavaScript. Ela não requer
uma DOM (Modelo de Objetos do
Documento). E tem uma sintaxe limpa, de
modo que você pode facilmente escrever
testes.
![Page 3: Apresentação jasmine](https://reader035.fdocuments.net/reader035/viewer/2022081821/548058f45806b5d15e8b4a07/html5/thumbnails/3.jpg)
BDD vs. TDD
• É orientado a BDD (Behavior Driven Development), ou seja, desenvolvimento orientado a comportamento.
• BDD, muitas vezes é confundido com TDD.
![Page 4: Apresentação jasmine](https://reader035.fdocuments.net/reader035/viewer/2022081821/548058f45806b5d15e8b4a07/html5/thumbnails/4.jpg)
Jasmine use TDD BDD
![Page 5: Apresentação jasmine](https://reader035.fdocuments.net/reader035/viewer/2022081821/548058f45806b5d15e8b4a07/html5/thumbnails/5.jpg)
Práticas BDD
• Envolver os stakeholders no processo através de Outside-in Development (Desenvolvimento de Fora pra Dentro)
• Usar exemplos para descrever o comportamento de uma aplicação ou unidades de código
• Automatizar os exemplos para prover um feedback rápido e testes de regressão
• Usar deve na hora de descrever o comportamento de software para ajudar esclarecer responsabilidades e permitir que funcionalidades do software sejam questionadas
• Usar dublês de teste (mocks, stubs, fakes, dummies, spies) para auxiliar na colaboração entre módulos e códigos que ainda não foram escritos
![Page 6: Apresentação jasmine](https://reader035.fdocuments.net/reader035/viewer/2022081821/548058f45806b5d15e8b4a07/html5/thumbnails/6.jpg)
Especificações do Framework
• Suites (describe) - Conjunto de Specs;
• Specs (it) - Teste individuais;
• Matches (expect()) – Conjunto de condições – Exemplo:
expect(x).toEqual(y) = assertEquals in JUnit
expect(x).toBeNull() = assertNull in JUnit
• Before and After – Define funções que são executadas antes ou depois de um spec;
![Page 7: Apresentação jasmine](https://reader035.fdocuments.net/reader035/viewer/2022081821/548058f45806b5d15e8b4a07/html5/thumbnails/7.jpg)
Por onde começar?
• Download: https://github.com/pivotal/jasmine/downloads
• Documentation: http://pivotal.github.com/jasmine/
• Matchers:
http://github.com/pivotal/jasmine/wiki/Matchers
![Page 8: Apresentação jasmine](https://reader035.fdocuments.net/reader035/viewer/2022081821/548058f45806b5d15e8b4a07/html5/thumbnails/8.jpg)
Directory Folders
![Page 9: Apresentação jasmine](https://reader035.fdocuments.net/reader035/viewer/2022081821/548058f45806b5d15e8b4a07/html5/thumbnails/9.jpg)
Chamadas
• Dentro do cabeçalho do arquivo HTML importe cada um dos arquivos
• Junto é necessário os arquivos a serem testados e o seu arquivo de teste.
![Page 10: Apresentação jasmine](https://reader035.fdocuments.net/reader035/viewer/2022081821/548058f45806b5d15e8b4a07/html5/thumbnails/10.jpg)
Ao executar o arquivo principal, automaticamente será procurada a função describe dentro dos arquivos importados.
![Page 11: Apresentação jasmine](https://reader035.fdocuments.net/reader035/viewer/2022081821/548058f45806b5d15e8b4a07/html5/thumbnails/11.jpg)
• Code Sourcing...