Automatizando os testes da sua API, da teoria a prática com RestSharp e C# — Parte IV
Galera, chegamos a nossa última publicação sobre testes de API utilizando RestSharp com C#, conforme mencionei na publicação anterior vamos abordar o método POST.
Criaremos um um novo teste no mesmo projeto que haviamos criado anteriormente onde validávamos o método GET.
Então teremos a seguinte estrutura conforme a imagem abaixo:
Temos dois pontos de atenção nesse trecho marcado em vermelho.
- No nosso Method devemos indicar que estamos enviando um POST;
- Devemos informar que estamos enviando uma requisição no formato Json pois caso não venhamos informar ocorrerá um erro;
Obs.: Alguns pontos da estrutura do nosso teste não irei explicar nessa publicação galera porque já descrevi linha a linha na publicação anterior que pode ser vista aqui.
Dando continuidade, após criarmos nossa estrutura inicial vamos criar uma pasta no nosso projeto e dentro dessa pasta iremos criar uma nova classe com o nome de MethodPost (talvez não seja o melhor nome de classe, mas não se preocupem com isso no momento).
Botão direito do mouse em cima da pasta Model → Add → Class iremos criar uma nova classe e então teremos o seguinte resultado:
Nossa classe será pública pois iremos consumir três valores que iremos adicionar nela de acordo com nosso POST, esses três valores são ID, MARCA e CARRO, portanto teremos a estrutra abaixo:
No nosso teste precisamos fazer uma referência para a classe que criamos pois queremos utilizar todas as propriedades existentes na classe essa referência está em destaque, então iremos criar algo do tipo:
Após fazermos essa referência é hora de passar nossos valores que serão enviados no nosso POST, então teremos a estrutura:
Após criarmos nosso código deveremos ter uma estrutura similar a essa:
Galera, tenham atenção na linha 55 onde eu alterei nosso StatusCode para 201 pois indica que fizemos uma criação e outro ponto alterado foi nosso Assert pois nesse ponto estamos validando nosso ID.
Iremos executar nosso servidor JSON e iremos executar nossos testes, caso tenha ocorrido tudo com sucesso teremos os seguintes resultados:
Como podem ver os testes foram executados com sucesso e se acessarmos o endereço http://localhost:3000/tests que no caso esta especificado no nosso servidor JSON teremos um novo ID com marca e carro e seus respectivos valores atribuídos.
Galera, chegamos ao final dessa série de publicações envolvendo automação de testes de API com RestSharp e C#, foi algo bem simples, mas que acredito que possa agregar algum valor, espero que tenham gostado e caso tenham algum feedback fiquem a vontade.
Caso tenham interesse disponibilizei o código do nosso projeto no meu github: https://github.com/BRodrigo/RestSharp/tree/master/RestSharpDemo
That’s all folks.