Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
[Capiconf] - Wiremock: testando suas aplicaçõe...
Search
Kamila de fatima santos oliveira
May 16, 2020
Programming
0
91
[Capiconf] - Wiremock: testando suas aplicações além do Junit
Kamila de fatima santos oliveira
May 16, 2020
Tweet
Share
More Decks by Kamila de fatima santos oliveira
See All by Kamila de fatima santos oliveira
System design 101 - Java day Noroeste
kamilahsantos
1
44
[Thasfin + Orange Juice na CPBR] Minha aplicação virou um monstrinho e agora ?
kamilahsantos
1
27
Minha aplicação virou um monstrinho e agora?
kamilahsantos
2
73
Spring + Localstack : usando aws de forma gratuita
kamilahsantos
2
180
Hacktoberfest DevsJavaGirl
kamilahsantos
0
70
[We are developers Java developer day ] - I will have to refactor ! And now ? Refactoring Techniques in Java
kamilahsantos
1
76
[Codecon summit ] Minha aplicação virou um monstrinho e agora ?
kamilahsantos
2
140
[Semana de SI - each usp] Desmistificando a carreira em tecnologia: de estágio a liderança técnica
kamilahsantos
0
73
[Alura DLC] Como se manter técnica em uma carreira de gestão
kamilahsantos
1
72
Other Decks in Programming
See All in Programming
どうして僕の作ったクラスが手続き型と言われなきゃいけないんですか
akikogoto
1
120
AI時代におけるSRE、 あるいはエンジニアの生存戦略
pyama86
6
1.2k
Hotwire or React? ~アフタートーク・本編に含めなかった話~ / Hotwire or React? after talk
harunatsujita
1
120
Contemporary Test Cases
maaretp
0
140
ActiveSupport::Notifications supporting instrumentation of Rails apps with OpenTelemetry
ymtdzzz
1
250
Duckdb-Wasmでローカルダッシュボードを作ってみた
nkforwork
0
130
見せてあげますよ、「本物のLaravel批判」ってやつを。
77web
7
7.8k
Jakarta EE meets AI
ivargrimstad
0
120
TypeScriptでライブラリとの依存を限定的にする方法
tutinoko
3
690
.NET のための通信フレームワーク MagicOnion 入門 / Introduction to MagicOnion
mayuki
1
1.7k
AWS Lambdaから始まった Serverlessの「熱」とキャリアパス / It started with AWS Lambda Serverless “fever” and career path
seike460
PRO
1
260
PHP でアセンブリ言語のように書く技術
memory1994
PRO
1
170
Featured
See All Featured
Thoughts on Productivity
jonyablonski
67
4.3k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
10 Git Anti Patterns You Should be Aware of
lemiorhan
655
59k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
44
2.2k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
Optimizing for Happiness
mojombo
376
70k
The Cult of Friendly URLs
andyhume
78
6k
Art, The Web, and Tiny UX
lynnandtonic
297
20k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
The Invisible Side of Design
smashingmag
298
50k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Transcript
Wiremock: testando suas aplicações além do Junit
04 Kamila Santos Dev Backend
None
AGENDA
O QUE É WIREMOCK COMO O WIREMOCK TRABALHA STUBS SIMULAÇÃO
DE LATÊNCIA E FALHAS WIREMOCK FEAT JUNIT
É um simulador de APIs HTTP ou um WebServer de
Mocks O QUE É WIREMOCK?
MAS ANTES.... UM OVERVIEW DE TESTES
None
red green refactor tdd
JUNIT
Plataforma para construção e execução de testes, JUNIT
Descoberta e execução de testes na JVM JUNIT PLATFORM
expõe a interface TestEngine, que define o contrato de execução
de qualquer ferramenta de testes sobre a plataforma do JUnit JUNIT PLATFORM
Contém os novos recursos para construção de testes usando o
JUnit, e fornece uma implementação de TestEngine para execução dos testes escritos com o JUnit Jupiter. JUNIT JUPITER
Fornece um TestEngine para execução de testes escritos em JUnit
3 e 4 JUNIT VINTAGE
ALGUNS EXEMPLOS COM JUNIT
ALGUNS EXEMPLOS COM JUNIT
ALGUNS EXEMPLOS COM JUNIT
MOCKITO
ferramenta de criação de objetos mocks. MOCKITO
DECLARAR MOCK
INJETAR MOCK
None
DE VOLTA AO MIREMOCK
Simular responses HTTP para um serviço Restful que ainda não
existe PARA QUE UTILIZÁ-LO
Dados estáticos para testes unitários PARA QUE UTILIZÁ-LO
Simular respostas de requisições falhas PARA QUE UTILIZÁ-LO
Simular Timeout PARA QUE UTILIZÁ-LO
Simular Latência PARA QUE UTILIZÁ-LO
11 CLIENT APP HTTP REQUEST HTTP RESPONSE WIREMOCK SERVER
Configurar n número de stubs programaticamente O QUE É WIREMOCK?
Cada stub representa uma combinação de uma HttpRequest e uma
HttpResponse E O QUE SÃO STUBS?
Foi desenvolvido em Java COMO ELE FUNCIONA?
Deve ser utilizado para testes de integração e testes unitários.
COMO ELE FUNCIONA?
- Embedded - Standalone Mode COMO ELE FUNCIONA?
Roda os casos de teste no mesmo processo EMBEDDED JUNIT
REST CLIENT WIREMOCK
Os casos de teste rodam num processo separado STANDALONE JUNIT
REST CLIENT WIREMOCK
WIREMOCK X MOCKITO
WIREMOCK X MOCKITO WEBSERVER NÃO É UM SERVER HTTP REAL
SIMULA HTTP SIMULAR FALHAS SEMELHANTE A PROD
ADICIONANDO ELE AO NOSSO PROJETO
ADICIONANDO ELE AO NOSSO PROJETO
INSERINDO NA CLASSE
INSERINDO NA CLASSE
INSERINDO STUBS
COMO ELE VALIDA OS STUBS
BODY FILE
BODY FILE
EXEMPLO COM POST
ADD-MOVIE.JSON
STUB COM DELETE
UrlEqualTo()
avengers.json
Status 400
Status 400
Server/FaultResponses
Server/FaultResponses
Simulating Latency
Simulating Latency
Wiremock feat junit 4
Wiremock feat junit 4
Wiremock feat junit 4
Mais alguns exemplos
Mais alguns exemplos
Mais alguns exemplos
add-movie-template.json
add-movie-template.json
moviebyyear
year-template.json
responsetemplate
movie-byname-template.json
Referências https://www.udemy.com/share/1033QIAksceV1WR Xw=/ http://wiremock.org/ https://site.mockito.org/ https://elo7.dev/novidades-do-junit-5-parte-1/ https://elo7.dev/testes-codigo-mockito/ http://www.codeatest.com/mockito-isolamento- testes-unidade/
OBRIGADA!