Mostrar dados de Caso de Teste com jUnit e Spring no Console
16/10/2020
0
Olá pessoal! Tudo bem?
Estou estudando Spring e realizando alguns cases de testes básicos.
Eu criei uma pequena aplicação com o Spring Tool Suite. Um "Produto.java" com alguns atributos como id, descricao, preço....
A ideia foi construir um endpoint utilizando a classe "ProdutoResource", tendo anotações como @RestController e @RequestMapping(value = "/produtos") ... para aprender a utilizar e fazer testes com o endpoint. Estou utilizando o banco de dados H2, e criei um data.sql no resources com alguns dados para iniciar a base.
Na minha classe de TESTE, eu quero testar a requisição POST e criei o seguinte:
@Test
public void testaRequisicaoPOSTSucesso() throws Exception {
String url = "/produtos";
this.mvc.perform(post(url)
.content("{"descricao":"Brinquedo","codigoean":"9871125488900","preco":"20","qtdestoque":"100"}")
.contentType(MediaType.APPLICATION_JSON))
.andExpect(status().isCreated())
.andExpect(header().string("Location", is("http://localhost/produtos/3")))
.andDo(MockMvcResultHandlers.print());
}
O resultado do teste no jUnit retorna Sucesso.
É isso mesmo. Está tudo correto. =D
-----> Mas, eu gostaria que me retornasse no console esses dados. <-----
Não criei nenhuma interface de interação, apenas criei o projeto para brincar um pouco com testes e o mock... mvc...
É possível printar esses dados no console?
Após executar a classe com o jUnit, apenas me retorna isso no console:
============================
MockHttpServletRequest:
HTTP Method = POST
Request URI = /produtos
Parameters = {}
Headers = {Content-Type=[application/json]}
Body = <no character encoding set>
Session Attrs = {}
Handler:
Type = br.com.produto.controllers.ProdutoResource
Method = public org.springframework.http.ResponseEntity<?> br.com.produto.controllers.ProdutoResource.salvar(br.com.produto.domains.Produto)
Async:
Async started = false
Async result = null
Resolved Exception:
Type = null
ModelAndView:
View name = null
View = null
Model = null
FlashMap:
Attributes = null
MockHttpServletResponse:
Status = 201
Error message = null
Headers = {Location=[http://localhost/produtos/3]}
Content type = null
Body =
Forwarded URL = null
Redirected URL = http://localhost/produtos/3
Cookies = []
============================
Agradeço a ajuda! Valeu!
Estou estudando Spring e realizando alguns cases de testes básicos.
Eu criei uma pequena aplicação com o Spring Tool Suite. Um "Produto.java" com alguns atributos como id, descricao, preço....
A ideia foi construir um endpoint utilizando a classe "ProdutoResource", tendo anotações como @RestController e @RequestMapping(value = "/produtos") ... para aprender a utilizar e fazer testes com o endpoint. Estou utilizando o banco de dados H2, e criei um data.sql no resources com alguns dados para iniciar a base.
Na minha classe de TESTE, eu quero testar a requisição POST e criei o seguinte:
@Test
public void testaRequisicaoPOSTSucesso() throws Exception {
String url = "/produtos";
this.mvc.perform(post(url)
.content("{"descricao":"Brinquedo","codigoean":"9871125488900","preco":"20","qtdestoque":"100"}")
.contentType(MediaType.APPLICATION_JSON))
.andExpect(status().isCreated())
.andExpect(header().string("Location", is("http://localhost/produtos/3")))
.andDo(MockMvcResultHandlers.print());
}
O resultado do teste no jUnit retorna Sucesso.
É isso mesmo. Está tudo correto. =D
-----> Mas, eu gostaria que me retornasse no console esses dados. <-----
Não criei nenhuma interface de interação, apenas criei o projeto para brincar um pouco com testes e o mock... mvc...
É possível printar esses dados no console?
Após executar a classe com o jUnit, apenas me retorna isso no console:
============================
MockHttpServletRequest:
HTTP Method = POST
Request URI = /produtos
Parameters = {}
Headers = {Content-Type=[application/json]}
Body = <no character encoding set>
Session Attrs = {}
Handler:
Type = br.com.produto.controllers.ProdutoResource
Method = public org.springframework.http.ResponseEntity<?> br.com.produto.controllers.ProdutoResource.salvar(br.com.produto.domains.Produto)
Async:
Async started = false
Async result = null
Resolved Exception:
Type = null
ModelAndView:
View name = null
View = null
Model = null
FlashMap:
Attributes = null
MockHttpServletResponse:
Status = 201
Error message = null
Headers = {Location=[http://localhost/produtos/3]}
Content type = null
Body =
Forwarded URL = null
Redirected URL = http://localhost/produtos/3
Cookies = []
============================
Agradeço a ajuda! Valeu!
Djessyca
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)