SlideShare uma empresa Scribd logo
1 de 66
Baixar para ler offline
Continuous
LearningAve
Native
AppsAlley
Avenue Coders
Plaza
DevOps
Road
Microservices
Blvd
Cloud Platform
Blvd
Machine Learning
Ave
Data
Science
Plaza
Web Development
Hwy
Design
Alley
Digital
Transformation
Ave
Agile
Coaching
Ave
E-Commerce
Turnpike
Developers
Hwy
Testando uma aplicação
com Arquitetura
Hexagonal e Spring
Boot
Dezembro/2020
Henrique Schmidt
https://bit.ly/33fa4N0
henriquels25/fantasy-sport-api
https://bit.ly/2IYWvdV
Arquitetura
Hexagonal
Pirâmide de testes Testando a lógica
de negócio
Testando os
adaptadores
Testes end-to-end
Summary
1 4 52 3
Arquitetura
Hexagonal1
Ports & Adapters
@TotherAlistair
Documentado em 2005, por
Alistair Cockburn.
https://alistair.cockburn.us/hexagonal-architecture/
A V E
NUE
8
Objetivo #1
Arquitetura Hexagonal
Permitir que uma aplicação seja
igualmente guiada por usuários,
programas, testes automatizados ou
scripts.
1
A V E
NUE
9
Objetivo #2
Arquitetura Hexagonal
Permitir que uma aplicação seja desenvolvida
de forma isolada dos banco de dados e
dispositivos necessários na hora da execução.
1
A V E
NUE
10
Arquitetura Hexagonal1
https://alistair.cockburn.us/hexagonal-architecture
A V E
NUE
11
Arquitetura Hexagonal1
Classes
Interfaces
Dependência
Implementação
Classes com lógica
de negócio
A V E
NUE
13
Arquitetura Hexagonal1
Classes
Interfaces
Dependência
Implementação
Classes com lógica
de negócio
A V E
NUE
14
Arquitetura Hexagonal1
Classes
Interfaces
Dependência
Implementação
Classes com lógica
de negócio
A V E
NUE
15
Arquitetura Hexagonal1
Classes
Interfaces
Dependência
Implementação
Classes com lógica
de negócio
A V E
NUE
16
Arquitetura Hexagonal1
Classes
Interfaces
Dependência
Implementação
Classes com lógica
de negócio
Pirâmide de
testes2
A V E
NUE
18
Pirâmide de testes2
@mikewcohn
A V E
NUE
19
Pirâmide de testes2
https://martinfowler.com/articles/practical-test-pyramid.html
A V E
NUE
20
Pirâmide de testes2
Unitários
Integração
E2E
Camada de negócio
Adaptadores
Integração entre
adaptadores e negócio
Testando a
lógica de
negócio3
https://github.com/henriquels25/fantasy-sport-api
Classes
Interfaces
Dependência
Implementação
A V E
NUE
23
Testando a lógica de negócio3
Unitários
Integração
E2E
A V E
NUE
24
Testando a lógica de negócio3
Classes
Interfaces
Dependência
Implementação
Classe sobre teste
A V E
NUE
25
Como não há infra-estrutura
complexa envolvida,
precisamos apenas de uma
biblioteca de testes
Testando a lógica de negócio3
https://github.com/henriquels25/fantasy-sport-api/blob/main/src/test/java/io/henriquels25/fanta
sysport/player/PlayerFacadeTest.java
https://github.com/henriquels25/fantasy-sport-api/blob/main/src/test/java/io/henriquels25/fanta
sysport/player/PlayerFacadeTest.java
https://github.com/henriquels25/fantasy-sport-api/blob/main/src/test/java/io/henriquels25/fanta
sysport/player/PlayerFacadeTest.java
Testando os
adaptadores4
A V E
NUE
31
Testando os adaptadores4
Unitários
Integração
E2E
A V E
NUE
32
O propósito do
Spring Boot é tornar
fácil a criação de
aplicações Spring.
Testando os adaptadores4
https://spring.io/blog/2013/08/06/spring-boot-simplifying-spring-for-everyone/
A V E
NUE
33
4
● Banco de dados relacional;
● MongoDB;
● Kafka;
● Chamada para API externa.
Testando os adaptadores
Provê a infraestrutura para diversos tipos de
teste, entre eles:
A V E
NUE
34
Objetivo é garantir que
nosso código integra de
forma correta com o mundo
externo
Testando os adaptadores4
Não crie mocks para tipos
que você não é o dono
How to write good tests - Documentação do mockito
https://github.com/mockito/mockito/wiki/How-to-write-good-tests
Testando o
Controller
A V E
NUE
37
Testando os adaptadores4
Classes
Interfaces
Dependência
Implementação
Classe sobre teste
A V E
NUE
39
Contexto Spring
Testando os adaptadores
O Spring Boot fornece diversas anotações para levantar
apenas uma parte de uma aplicação.
4
A V E
NUE
40
Testando os adaptadores4
@WebMvcTest
@WebFluxTest
A V E
NUE
41
Testando os adaptadores4
https://github.com/henriquels25/fantasy-sport-api/blob/main/src/test/java/io/henriquels25/fanta
sysport/player/infra/controller/PlayerControllerTest.java
A V E
NUE
42
Testando os adaptadores4
https://github.com/henriquels25/fantasy-sport-api/blob/main/src/test/java/io/henriquels25/fanta
sysport/player/infra/controller/PlayerControllerTest.java
A V E
NUE
43
Testando os adaptadores4
https://github.com/henriquels25/fantasy-sport-api/blob/main/src/test/java/io/henriquels25/fanta
sysport/player/infra/controller/PlayerControllerTest.java
MongoDB
A V E
NUE
45
Testando os adaptadores4
Classes
Interfaces
Dependência
Implementação
Classe sobre teste
A V E
NUE
46
4
@DataMongoTest
1. A aplicação se conectará a um banco de dados MongoDB embarcado, por
padrão.
2. Todos documentos e repositórios estarão disponíveis para teste.
Testando os adaptadores
A V E
NUE
47
4 Testando os adaptadores
https://github.com/henriquels25/fantasy-sport-api/blob/main/src/test/java/io/henriquels25/fanta
sysport/player/infra/mongo/MongoPlayerRepositoryTest.java
A V E
NUE
48
4 Testando os adaptadores
https://github.com/henriquels25/fantasy-sport-api/blob/main/src/test/java/io/henriquels25/fanta
sysport/player/infra/mongo/MongoPlayerRepositoryTest.java
API Externa
A V E
NUE
50
Testando os adaptadores4
Classes
Interfaces
Dependência
Implementação
Classe sobre teste
A V E
NUE
51
4
@AutoConfigureWireMock
1. Esta anotação subirá um servidor WireMock onde a aplicação fará
chamadas como se fosse um servidor real.
Testando os adaptadores
A V E
NUE
52
4 Testando os adaptadores
https://github.com/henriquels25/fantasy-sport-api/blob/main/src/test/java/io/henriquels25/fanta
sysport/player/infra/client/RestTeamRepositoryTest.java
A V E
NUE
53
4 Testando os adaptadores
https://github.com/henriquels25/fantasy-sport-api/blob/main/src/test/java/io/henriquels25/fanta
sysport/player/infra/client/RestTeamRepositoryTest.java
Kafka
A V E
NUE
55
Testando os adaptadores4
Classes
Interfaces
Dependência
Implementação
Classe sobre teste
A V E
NUE
57
4
@EmbeddedKafka
1. Esta anotação fornece um servidor Kafka em memória para ser usado nos
testes de integração
Testando os adaptadores
A V E
NUE
58
4 Testando os adaptadores
https://github.com/henriquels25/fantasy-sport-api/blob/main/src/test/java/io/henriquels25/fanta
sysport/player/infra/kafka/KafkaPlayerNotificationTest.java
A V E
NUE
59
4 Testando os adaptadores
https://github.com/henriquels25/fantasy-sport-api/blob/main/src/test/java/io/henriquels25/fanta
sysport/player/infra/kafka/KafkaPlayerNotificationTest.java
Testes
end-to-end5
A V E
NUE
61
5 Testes end-to-end
Unitários
Integração
E2E
A V E
NUE
62
5 Testes end-to-end
Dependência
Implementação
Classe sobre teste
A V E
NUE
63
5
@SpringBootTest
1. Essa anotação permite fazer um teste levantando todo o contexto de uma
aplicação Spring Boot.
2. Com isso, é possível validar que a implementação dos adaptadores
funcionam corretamente quando integrados com a camada de negócio.
Testes end-to-end
A V E
NUE
64
5 Testes end-to-end
https://github.com/henriquels25/fantasy-sport-api/blob/main/src/test/java/io/henriquels25/fanta
sysport/player/PlayerAcceptanceTest.java
A V E
NUE
65
5 Testes end-to-end
https://github.com/henriquels25/fantasy-sport-api/blob/main/src/test/java/io/henriquels25/fanta
sysport/player/PlayerAcceptanceTest.java
A V E
NUE
66
5 Testes end-to-end
https://github.com/henriquels25/fantasy-sport-api/blob/main/src/test/java/io/henriquels25/fanta
sysport/player/PlayerAcceptanceTest.java
A V E
NUE
67
5 Testes end-to-end
https://github.com/henriquels25/fantasy-sport-api/blob/main/src/test/java/io/henriquels25/fanta
sysport/player/PlayerAcceptanceTest.java
A V E
NUE
68
5 Testes end-to-end
https://github.com/henriquels25/fantasy-sport-api/blob/main/src/test/java/io/henriquels25/fanta
sysport/player/PlayerAcceptanceTest.java
Thank you!
Questions?
Henrique Schmidt
henriquels25@gmail.com
https://bit.ly/2IYWvdV

Mais conteúdo relacionado

Mais procurados

Engenharia de Software - Conceitos e Modelos de Desenvolvimento
Engenharia de Software - Conceitos e Modelos de Desenvolvimento Engenharia de Software - Conceitos e Modelos de Desenvolvimento
Engenharia de Software - Conceitos e Modelos de Desenvolvimento Sérgio Souza Costa
 
Node.JS - Workshop do básico ao avançado
Node.JS - Workshop do básico ao avançadoNode.JS - Workshop do básico ao avançado
Node.JS - Workshop do básico ao avançadoEduardo Bohrer
 
Modelos de Processo de Software Parte 5
Modelos de Processo de Software Parte 5Modelos de Processo de Software Parte 5
Modelos de Processo de Software Parte 5Elaine Cecília Gatto
 
Fundamentos de Padrões de Projeto de Software
Fundamentos de Padrões de Projeto de SoftwareFundamentos de Padrões de Projeto de Software
Fundamentos de Padrões de Projeto de SoftwareÁlvaro Farias Pinheiro
 
SOA - Arquitetura Orientada a Serviços
SOA - Arquitetura Orientada a ServiçosSOA - Arquitetura Orientada a Serviços
SOA - Arquitetura Orientada a Serviçosalinebicudo
 
Site Reliability Engineering - Descubra a nova era para (Infraestrutura|Opera...
Site Reliability Engineering - Descubra a nova era para (Infraestrutura|Opera...Site Reliability Engineering - Descubra a nova era para (Infraestrutura|Opera...
Site Reliability Engineering - Descubra a nova era para (Infraestrutura|Opera...Pery Lemke
 
Programação Orientada a objetos em Java
Programação Orientada a objetos em JavaProgramação Orientada a objetos em Java
Programação Orientada a objetos em JavaDenis L Presciliano
 
From ActiveRecord to EventSourcing
From ActiveRecord to EventSourcingFrom ActiveRecord to EventSourcing
From ActiveRecord to EventSourcingEmanuele DelBono
 
Arquitetura Evolutiva - A retomada do ágil 18 anos depois
Arquitetura Evolutiva - A retomada do ágil 18 anos depoisArquitetura Evolutiva - A retomada do ágil 18 anos depois
Arquitetura Evolutiva - A retomada do ágil 18 anos depoisAndré Paulovich
 
Aula de Introdução - JAVA
Aula de Introdução  - JAVAAula de Introdução  - JAVA
Aula de Introdução - JAVAMoises Omena
 
Modelo de Prototipação
Modelo de PrototipaçãoModelo de Prototipação
Modelo de PrototipaçãoJuliano Pires
 
XP - Extreme Programming
XP - Extreme ProgrammingXP - Extreme Programming
XP - Extreme ProgrammingRodrigo Branas
 
Desenvolvendo Apps Nativos com Flutter
Desenvolvendo Apps Nativos com FlutterDesenvolvendo Apps Nativos com Flutter
Desenvolvendo Apps Nativos com FlutterPaulo Henrique
 
Compilador-Analisador Léxico com FLEX + Linguagem C
Compilador-Analisador Léxico com FLEX + Linguagem C Compilador-Analisador Léxico com FLEX + Linguagem C
Compilador-Analisador Léxico com FLEX + Linguagem C Aldisio Medeiros
 
Kata: Hexagonal Architecture / Ports and Adapters
Kata: Hexagonal Architecture / Ports and AdaptersKata: Hexagonal Architecture / Ports and Adapters
Kata: Hexagonal Architecture / Ports and Adaptersholsky
 
Acesso a Banco de Dados em Java usando JDBC
Acesso a Banco de Dados em Java usando JDBCAcesso a Banco de Dados em Java usando JDBC
Acesso a Banco de Dados em Java usando JDBCLuiz Ricardo Silva
 
Arquitectura hexagonal
Arquitectura hexagonalArquitectura hexagonal
Arquitectura hexagonal540deg
 

Mais procurados (20)

Engenharia de Software - Conceitos e Modelos de Desenvolvimento
Engenharia de Software - Conceitos e Modelos de Desenvolvimento Engenharia de Software - Conceitos e Modelos de Desenvolvimento
Engenharia de Software - Conceitos e Modelos de Desenvolvimento
 
Node.JS - Workshop do básico ao avançado
Node.JS - Workshop do básico ao avançadoNode.JS - Workshop do básico ao avançado
Node.JS - Workshop do básico ao avançado
 
Modelos de Processo de Software Parte 5
Modelos de Processo de Software Parte 5Modelos de Processo de Software Parte 5
Modelos de Processo de Software Parte 5
 
Curso de Node JS Básico
Curso de Node JS BásicoCurso de Node JS Básico
Curso de Node JS Básico
 
Fundamentos de Padrões de Projeto de Software
Fundamentos de Padrões de Projeto de SoftwareFundamentos de Padrões de Projeto de Software
Fundamentos de Padrões de Projeto de Software
 
Curso de ReactJS
Curso de ReactJSCurso de ReactJS
Curso de ReactJS
 
SOA - Arquitetura Orientada a Serviços
SOA - Arquitetura Orientada a ServiçosSOA - Arquitetura Orientada a Serviços
SOA - Arquitetura Orientada a Serviços
 
Site Reliability Engineering - Descubra a nova era para (Infraestrutura|Opera...
Site Reliability Engineering - Descubra a nova era para (Infraestrutura|Opera...Site Reliability Engineering - Descubra a nova era para (Infraestrutura|Opera...
Site Reliability Engineering - Descubra a nova era para (Infraestrutura|Opera...
 
Programação Orientada a objetos em Java
Programação Orientada a objetos em JavaProgramação Orientada a objetos em Java
Programação Orientada a objetos em Java
 
From ActiveRecord to EventSourcing
From ActiveRecord to EventSourcingFrom ActiveRecord to EventSourcing
From ActiveRecord to EventSourcing
 
Arquitetura Evolutiva - A retomada do ágil 18 anos depois
Arquitetura Evolutiva - A retomada do ágil 18 anos depoisArquitetura Evolutiva - A retomada do ágil 18 anos depois
Arquitetura Evolutiva - A retomada do ágil 18 anos depois
 
Aula de Introdução - JAVA
Aula de Introdução  - JAVAAula de Introdução  - JAVA
Aula de Introdução - JAVA
 
Modelo de Prototipação
Modelo de PrototipaçãoModelo de Prototipação
Modelo de Prototipação
 
XP - Extreme Programming
XP - Extreme ProgrammingXP - Extreme Programming
XP - Extreme Programming
 
Python Orientação a Objeto
Python Orientação a ObjetoPython Orientação a Objeto
Python Orientação a Objeto
 
Desenvolvendo Apps Nativos com Flutter
Desenvolvendo Apps Nativos com FlutterDesenvolvendo Apps Nativos com Flutter
Desenvolvendo Apps Nativos com Flutter
 
Compilador-Analisador Léxico com FLEX + Linguagem C
Compilador-Analisador Léxico com FLEX + Linguagem C Compilador-Analisador Léxico com FLEX + Linguagem C
Compilador-Analisador Léxico com FLEX + Linguagem C
 
Kata: Hexagonal Architecture / Ports and Adapters
Kata: Hexagonal Architecture / Ports and AdaptersKata: Hexagonal Architecture / Ports and Adapters
Kata: Hexagonal Architecture / Ports and Adapters
 
Acesso a Banco de Dados em Java usando JDBC
Acesso a Banco de Dados em Java usando JDBCAcesso a Banco de Dados em Java usando JDBC
Acesso a Banco de Dados em Java usando JDBC
 
Arquitectura hexagonal
Arquitectura hexagonalArquitectura hexagonal
Arquitectura hexagonal
 

Semelhante a Testando uma aplicação com Arquitetura Hexagonal e Spring Boot

Continuous Delivery com ArgoCD
Continuous Delivery com ArgoCDContinuous Delivery com ArgoCD
Continuous Delivery com ArgoCDRodrigo Souza
 
ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014Giovanni Bassi
 
TDC 2016 SP - Testes em API REST
TDC 2016 SP - Testes em API RESTTDC 2016 SP - Testes em API REST
TDC 2016 SP - Testes em API RESTClaudenir Freitas
 
Angular5, vue js ou react redux (Trilha de Javascript - TDC 2018 )
Angular5, vue js ou react redux (Trilha de Javascript - TDC 2018 )Angular5, vue js ou react redux (Trilha de Javascript - TDC 2018 )
Angular5, vue js ou react redux (Trilha de Javascript - TDC 2018 )Getúlio Strapazzon
 
Automação de Teste para REST, Web e Mobile
Automação de Teste para REST, Web e MobileAutomação de Teste para REST, Web e Mobile
Automação de Teste para REST, Web e MobileElias Nogueira
 
Desenvolvimento de APIs REST Multiplataforma com ASP.NET Core - Setembro-2019
Desenvolvimento de APIs REST Multiplataforma com ASP.NET Core - Setembro-2019Desenvolvimento de APIs REST Multiplataforma com ASP.NET Core - Setembro-2019
Desenvolvimento de APIs REST Multiplataforma com ASP.NET Core - Setembro-2019Renato Groff
 
Boas práticas na implementação de APIs REST com ASP.NET Core - Outubro-2019
Boas práticas na implementação de APIs REST com ASP.NET Core - Outubro-2019Boas práticas na implementação de APIs REST com ASP.NET Core - Outubro-2019
Boas práticas na implementação de APIs REST com ASP.NET Core - Outubro-2019Renato Groff
 
CNQS - Testes Automatizados & Continuous Delivery
CNQS - Testes Automatizados & Continuous DeliveryCNQS - Testes Automatizados & Continuous Delivery
CNQS - Testes Automatizados & Continuous DeliverySamanta Cicilia
 
TDC 2016 SP - Desmistificando cobertura de código como métrica de qualidade
TDC 2016 SP - Desmistificando cobertura de código como métrica de qualidadeTDC 2016 SP - Desmistificando cobertura de código como métrica de qualidade
TDC 2016 SP - Desmistificando cobertura de código como métrica de qualidadeStefan Teixeira
 
DevOps na AWS: Construindo Sistemas para Entregas Rápidas
DevOps na AWS: Construindo Sistemas para Entregas RápidasDevOps na AWS: Construindo Sistemas para Entregas Rápidas
DevOps na AWS: Construindo Sistemas para Entregas RápidasAmazon Web Services LATAM
 
Monitorando serviços REST com o Application Insights
Monitorando serviços REST com o Application InsightsMonitorando serviços REST com o Application Insights
Monitorando serviços REST com o Application InsightsRenato Groff
 
TechEd Brasil 2010 - Novidades e razões para migrar para o microsoft .net fra...
TechEd Brasil 2010 - Novidades e razões para migrar para o microsoft .net fra...TechEd Brasil 2010 - Novidades e razões para migrar para o microsoft .net fra...
TechEd Brasil 2010 - Novidades e razões para migrar para o microsoft .net fra...JP Clementi
 
Introdução à Programação Web com Angular
Introdução à Programação Web com AngularIntrodução à Programação Web com Angular
Introdução à Programação Web com AngularElmano Cavalcanti
 
Criando testes com Plone
Criando testes com PloneCriando testes com Plone
Criando testes com PloneRamiro Luz
 
Azure Bootcamp 2018 - DevOps para profissionais de Infra - Infomach / Goiânia
Azure Bootcamp 2018 - DevOps para profissionais de Infra - Infomach / GoiâniaAzure Bootcamp 2018 - DevOps para profissionais de Infra - Infomach / Goiânia
Azure Bootcamp 2018 - DevOps para profissionais de Infra - Infomach / GoiâniaRodrigo Marques Teixeira
 
Treinamento Android Embarcado
Treinamento Android EmbarcadoTreinamento Android Embarcado
Treinamento Android EmbarcadoOdair Sousa
 
Interoperabilidade com .NET em ambiente Mainframe
Interoperabilidade com .NET em ambiente MainframeInteroperabilidade com .NET em ambiente Mainframe
Interoperabilidade com .NET em ambiente MainframeAlessandro Binhara
 
Agileze seus testes com automacao e grid
Agileze seus testes com automacao e gridAgileze seus testes com automacao e grid
Agileze seus testes com automacao e gridElias Nogueira
 

Semelhante a Testando uma aplicação com Arquitetura Hexagonal e Spring Boot (20)

Continuous Delivery com ArgoCD
Continuous Delivery com ArgoCDContinuous Delivery com ArgoCD
Continuous Delivery com ArgoCD
 
ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014
 
TDC 2016 SP - Testes em API REST
TDC 2016 SP - Testes em API RESTTDC 2016 SP - Testes em API REST
TDC 2016 SP - Testes em API REST
 
Workshop ASP.NET MVC 5
Workshop ASP.NET MVC 5Workshop ASP.NET MVC 5
Workshop ASP.NET MVC 5
 
Angular5, vue js ou react redux (Trilha de Javascript - TDC 2018 )
Angular5, vue js ou react redux (Trilha de Javascript - TDC 2018 )Angular5, vue js ou react redux (Trilha de Javascript - TDC 2018 )
Angular5, vue js ou react redux (Trilha de Javascript - TDC 2018 )
 
Automação de Teste para REST, Web e Mobile
Automação de Teste para REST, Web e MobileAutomação de Teste para REST, Web e Mobile
Automação de Teste para REST, Web e Mobile
 
Desenvolvimento de APIs REST Multiplataforma com ASP.NET Core - Setembro-2019
Desenvolvimento de APIs REST Multiplataforma com ASP.NET Core - Setembro-2019Desenvolvimento de APIs REST Multiplataforma com ASP.NET Core - Setembro-2019
Desenvolvimento de APIs REST Multiplataforma com ASP.NET Core - Setembro-2019
 
Boas práticas na implementação de APIs REST com ASP.NET Core - Outubro-2019
Boas práticas na implementação de APIs REST com ASP.NET Core - Outubro-2019Boas práticas na implementação de APIs REST com ASP.NET Core - Outubro-2019
Boas práticas na implementação de APIs REST com ASP.NET Core - Outubro-2019
 
CNQS - Testes Automatizados & Continuous Delivery
CNQS - Testes Automatizados & Continuous DeliveryCNQS - Testes Automatizados & Continuous Delivery
CNQS - Testes Automatizados & Continuous Delivery
 
TDC 2016 SP - Desmistificando cobertura de código como métrica de qualidade
TDC 2016 SP - Desmistificando cobertura de código como métrica de qualidadeTDC 2016 SP - Desmistificando cobertura de código como métrica de qualidade
TDC 2016 SP - Desmistificando cobertura de código como métrica de qualidade
 
DevOps na AWS: Construindo Sistemas para Entregas Rápidas
DevOps na AWS: Construindo Sistemas para Entregas RápidasDevOps na AWS: Construindo Sistemas para Entregas Rápidas
DevOps na AWS: Construindo Sistemas para Entregas Rápidas
 
Monitorando serviços REST com o Application Insights
Monitorando serviços REST com o Application InsightsMonitorando serviços REST com o Application Insights
Monitorando serviços REST com o Application Insights
 
TechEd Brasil 2010 - Novidades e razões para migrar para o microsoft .net fra...
TechEd Brasil 2010 - Novidades e razões para migrar para o microsoft .net fra...TechEd Brasil 2010 - Novidades e razões para migrar para o microsoft .net fra...
TechEd Brasil 2010 - Novidades e razões para migrar para o microsoft .net fra...
 
Introdução à Programação Web com Angular
Introdução à Programação Web com AngularIntrodução à Programação Web com Angular
Introdução à Programação Web com Angular
 
Criando testes com Plone
Criando testes com PloneCriando testes com Plone
Criando testes com Plone
 
Azure Bootcamp 2018 - DevOps para profissionais de Infra - Infomach / Goiânia
Azure Bootcamp 2018 - DevOps para profissionais de Infra - Infomach / GoiâniaAzure Bootcamp 2018 - DevOps para profissionais de Infra - Infomach / Goiânia
Azure Bootcamp 2018 - DevOps para profissionais de Infra - Infomach / Goiânia
 
Treinamento Android Embarcado
Treinamento Android EmbarcadoTreinamento Android Embarcado
Treinamento Android Embarcado
 
FlexMania 2010
FlexMania 2010FlexMania 2010
FlexMania 2010
 
Interoperabilidade com .NET em ambiente Mainframe
Interoperabilidade com .NET em ambiente MainframeInteroperabilidade com .NET em ambiente Mainframe
Interoperabilidade com .NET em ambiente Mainframe
 
Agileze seus testes com automacao e grid
Agileze seus testes com automacao e gridAgileze seus testes com automacao e grid
Agileze seus testes com automacao e grid
 

Testando uma aplicação com Arquitetura Hexagonal e Spring Boot