Casa do Código - Livros e Tecnologia

  • Programação
  • Lógica
  • Java
  • .NET
  • PHP
  • Games
  • OO
  • Funcional
  • Python
  • Outros
  • Todos
  • Mobile
  • iOS
  • Android
  • Multiplataforma
  • Outros
  • Todos
  • Front-end
  • HTML e CSS
  • JavaScript
  • Outros
  • Todos
  • Infraestrutura
  • Web
  • Dados
  • Outros
  • Todos
  • Business
  • Startups
  • Marketing Digital
  • Gestão
  • Agile
  • Outros
  • Todos
  • Design & UX
  • Você tem 0 itens na sacola 0 Abrir navegação por categorias e busca Ir para ao topo da página

    Use o código e tenha 10% de desconto!

    Spock framework Testes automatizados para Java, Android e REST

    José Yoshiriro
    Livro de Spock Framework

    *Você terá acesso às futuras atualizações do livro.

    Conteúdo

    A presença de testes automatizados é importante para dar segurança em qualquer código. Seja para refatorá-lo, mantê-lo, seja para inserir novas funcionalidades, os testes permitem uma detecção mais rápida quando algum comportamento anterior é quebrado. Um software interage com diversos recursos dentro de seu ecossistema e provê diferentes tipos de interface para a execução de suas funcionalidades, e é necessário lidar com tudo isso ao criar seus testes automatizados. O Spock framework é uma ferramenta muito poderosa, que pode ser a grande aliada de sua equipe na construção mais rápida e simples de testes melhores e menos verbosos.

    Neste livro, José Yoshiriro ensina a utilizar as funcionalidades do Spock framework e apresenta as técnicas de teste, juntamente com exemplos didáticos e focados em problemas do mundo real para tecnologias que são padrão de mercado. Você conhecerá esta ferramenta completa, que dispensa a configuração de bibliotecas adicionais, e dominará suas principais funcionalidades: criação de simples testes unitários; uso de Mocks; o recurso de Data-Driven Testing; criação de testes unitários para Android, de integração para Spring e funcionais para REST APIs.

    Versão ampliada e atualizada para v1.3

    Saiba o que você vai aprender

     

    Sumário

    • 1 Por que usar Spock framework?
    • 1.1 Por que criar testes automatizados?
    • 1.2 Testes que podemos criar com Spock
    • 1.3 Por que usar Spock para projetos Java se temos JUnit, TestNG, Mockito etc.?
    • 2 Preparando o ambiente para trabalhar com Spock
    • 2.1 Configurando o Groovy nas principais IDEs Java
    • 2.2 Uso de Groovy em editores de código simples (Sublime Text, Brackets, Atom etc.)
    • 2.3 Configurando as dependências Spock do projeto com Maven
    • 2.4 Configurando as dependências Spock do projeto com Gradle
    • 2.5 Problema com a JDK 11 + Groovy até 2.5.2
    • 2.6 Execução de testes no Eclipe 2018+
    • 2.7 Experimentando o Spock on-line
    • 3 Primeiros testes automatizados com Spock
    • 3.1 Primeiro teste: A classe Math calcula potência corretamente?
    • 3.2 Executando um teste
    • 3.3 O que acontece quando um teste falha
    • 4 Anatomia de um teste Spock
    • 4.1 Testes são chamados de Specifications
    • 4.2 Uma classe de teste pode conter vários métodos de teste
    • 4.3 Fixture Methods (métodos de montagem)
    • 4.4 Blocks (Blocos)
    • 4.5 Por que a anatomia do Spock é essa
    • 5 Data-Driven Testing - Facilitando os testes de múltiplos cenários
    • 5.1 Testando um Analisador de IMC
    • 5.2 Um método, vários cenários
    • 5.3 Descrevendo os testes que falham com detalhes dos cenários
    • 6 Exception Conditions - Testes à espera de exceções
    • 6.1 Às vezes o certo é dar errado
    • 6.2 Testando vários cenários de erro
    • 6.3 Verificando detalhes das exceções
    • 7 Testando com a ajuda de Mocks
    • 7.1 O que são dublês e por que usá-los
    • 7.2 Dependências adicionais para Mocks
    • 7.3 Configurando retornos de métodos em Mocks
    • 7.4 Configurando Mocks para lançarem exceções
    • 7.5 Configurando retornos de métodos aninhados em Mocks
    • 7.6 Verificando a quantidade de execuções de métodos dos Mocks
    • 8 Testando RESTful APIs
    • 8.1 O que são RESTful APIs e a importância de serem bem testadas
    • 8.2 Documentação da API de Cálculo e Banco de IMC
    • 8.3 Preparando o projeto para testes de REST APIs com o HTTP Client Framework For Groovy
    • 8.4 Testando o Endpoint POST /imcs
    • 8.5 Testando o Endpoint GET /imcs/{id}
    • 8.6 Testando o Endpoint GET /imcs
    • 8.7 Testando o Endpoint DELETE /imcs/{id}
    • 9 Recursos avançados
    • 9.1 Ignorando testes
    • 9.2 Tolerância de tempo de um teste com @Timeout
    • 9.3 Executando os testes na ordem em que estão na classe com @Stepwise
    • 9.4 Automatizando a repetição de testes com @Retry
    • 9.5 Compartilhando objetos entre testes com @Shared
    • 9.6 Restaurando propriedades do sistema com @RestoreSystemProperties
    • 9.7 Dando um título para a classe de testes com @Title
    • 9.8 Indicando referências
    • 10 Relatórios profissionais com Spock Reports Extention
    • 10.1 Alterando o diretório de geração do relatório
    • 10.2 Anotações @Title, @See e @Issue são usadas nos relatórios
    • 11 Testando metaprogramação (anotações)
    • 11.1 Metaprogramação em Java: anotações
    • 11.2 Por que testar anotações?
    • 11.3 Testando anotações de uma entidade JPA
    • 12 Testes de integração em projetos Spring
    • 12.1 Spring TestContext framework e Spring Module do Spock
    • 12.2 Testes de integração em um projeto Spring Boot
    • 12.3 Testes de integração em um projeto Spring MVC
    • 12.4 Ciclo de vida do contexto Spring nos testes de integração
    • 12.5 Profiles e properties do projeto Spring nos testes de integração
    • 13 Testes unitários em projetos Android
    • 13.1 Estudo de caso
    • 13.2 Configurando um projeto Android para trabalhar com Groovy
    • 13.3 Testando o projeto Android
    • 13.4 Limitações do Spock no Android
    • 14 Apêndice A - Guia de Groovy para desenvolvedores Java
    • 14.1 Como funciona o Groovy
    • 14.2 Características e recursos do Groovy
    • 15 Apêndice B - Perguntas frequentes sobre o Spock
    • 16 Referências

    Autor

    José Yoshiriro

    Bacharel em sistemas de informação, especialista em engenharia de sistemas e mestrando em Administração das Organizações pela USP. Ministra aulas em cursos de nível universitário desde 2010. É líder pedagógico na Faculdade São Paulo Tech School (SPTech) onde trabalha desde 2014. Já foi professor da FIAP e conteudista da FIAP ON entre 2017 e 2018. Trabalha com desenvolvimento/arquitetura de software desde 2004, tendo trabalhado principalmente com Java, Groovy, JavaScript e Python. Já atuou na criação e/ou evolução de sistemas usados em empresas como BrasilPrev, Citibank, Caixa Econômica Federal, Rico Home Broker, BNP, Tribunal de Justiça do Pará, American Red Cross (EUA) e OneBlood (EUA). Já criou/contribuiu em projetos open source para a http://Apache.org e http://Grails.org . Detém certificações internacionais Oracle (SCJP 6, SCWCD 5 e SCBCD 5) e OMG (OCUP). Possui vários artigos sobre programação publicados no Brasil e EUA e já palestrou em vários eventos de tecnologia como FISL (2015), Virada Tecnológica de São Paulo de 2017 e TDC São Paulo (2014, 2015 e 2017). É autor dos livros "Spock framework - Testes automatizados para Java, Android e REST" e "Deixe seu código limpo e brilhante - Desmistificando Clean Code com Java e Python", ambos pela Casa do Código.

    Dados do produto

    Número de páginas:
    250
    ISBN:
    978-85-94188-87-8
    Data publicação:
    10/2018. Atualizado em 08/2019
    Submeter errata Fórum de discussões

    Compartilhe!

    Compartilhe no Facebook Compartilhe no Twitter

    Impulsione sua carreira aprendendo também...

    Livro de Robot framework
    Robot framework
    +
    Livro Deixe seu código limpo e brilhante
    Deixe seu código limpo e brilhante
    altLogoFooter

    Links da
    Casa do Código

    • Meus ebooks
    • Sobre a Casa do Código
    • Todos os livros
    • Nossas coleções
    • Quero escrever um livro ou fazer parceria
    • Perguntas Frequentes
    • Política de Privacidade

    Nas redes sociais

    • /CasaDoCodigo
    • @casadocodigo
    • @casadocodigo

    Receba novidades e lançamentos

    Este site aceita

    • pag seguro
    • paypal

    Grupo Alura

    • Educação em Tecnologia

      • FIAP
      • Casa do Código
      • PM3 - Cursos de Produto
    • Mais Alura

      • Alura Start
      • Alura Língua
      • Alura Para Empresas
      • Alura LATAM
    • Comunidade

      • Tech Guide
      • 7 days of code
      • Hipsters ponto Jobs
    • Podcasts

      • Hipsters ponto Tech
      • Dev sem Fronteiras
      • Layers ponto Tech
      • Like a Boss
      • Scuba Dev