Executando verificação de segurança...
2

Pitch: Uma versão Beta, gratuita e OpenSource dos testes automatizados e de segurança do Postman

Motivo

Atualmente trabalho em um Ecommerce como desenvolvedor Java na Sustentação do projeto. 90% dos problemas que preciso resolver diariamente são urgentes, desta forma testar se torna massante e ocupa muito tempo. Por este motivo usava o Postman para fazer testes automatizados, porém na versão gratuita ele limita a quantidade de testes automatizado (na função Run das Collections).

Por este motivo, resolvi fazer minha versão, para estes testes automatizados, e acrescentar alguns testes de segurança.

Observações

Atualmente é apenas uma API que você envia uma requisição pra fazer os testes, segue um exemplo de requisition:

[
{
    "id": 0,
    "body": "{\"login\": \"string\",\"password\": \"string\"}",
    "url": "http://localhost:8091/login",
    "headers": "Content-type=application/json",
    "isOnline": 0,
    "gptKey": "",
    "params": "",
    "method": "POST",
    "numReq": 2
},
{
    "id": 0,
    "body": "{\"id\": 1,\"pcId\": \"d8:5e:d:43:a9\",\"processos\": \",winlogon.exe\",\"data_cadastro\": \"2023-03-08T03:00:00.000+00:00\",\"imagem\": {\"id\": 1}}",
    "url": "http://localhost:8091/alert/save",
    "headers": "Authorization=Bearer {{token}}&Content-type=application/json",
    "isOnline": 0,
    "gptKey": "",
    "params": "",
    "method": "POST",
    "numReq": 6
},
{
    "id": 0,
    "body": "{\"id\": 1,\"pcId\": \"d8:5e:d:43:a9\",\"processos\": \",winlogon.exe\",\"data_cadastro\": \"2023-03-08T03:00:00.000+00:00\",\"imagem\": {\"id\": 1}}",
    "url": "http://localhost:8091/alert/save",
    "headers": "Authorization=Bearer {{token}}&Content-type=application/json",
    "isOnline": 0,
    "gptKey": "{{url}}",
    "params": "",
    "method": "POST",
    "numReq": 8
}
]

No futuro quero criar mais funcionalidades para as variáveis e adicionar uma interface para facilitar a utilização (Obs: sou Back-End hehe)

Projeto

  • O projeto conta com algumas funcionalidades relacionadas a testes de requisições;
  • Para teste de segurança existem testes de SQL Injection, Command Injection, XSS Injection, senhas fracas e validação de dados;
  • Existe uma integração com o GPT-3 para verificar problemas na API;
  • É possível fazer testes de performance com diversas requisições paralelas;
  • Também é possível automatizar testes, fazendo com que a aplicação envie diversas requisições para endpoints diferentes;
  • Nestes testes automatizados é possível definir variáveis que são alimentadas com as responses de outras requisições, facilitando a automatização.

Desenvolvimento

  • Foi usado Java com SpringBoot;
  • Para segurança foi implementado um sistema de token como login;
  • Existem testes individuais para requisições POST, GET, DELETE e PUT;
  • Cada teste de requisição feita será salva em um banco PostgreSQL;
  • Foi usado o RestAssured para fazer requisições com Web Template.

Sobre o autor

Sou iniciante ainda, tenho pouco tempo de experiência mas quero migrar de desenvolvimento com ATG (que usa Java também) para SpringBoot. Por isso agradeço quaisquer ajuda em questão de divulgação e afins, por isso segue minhas redes e contato:
Meu site: https://noetzold.tech/
LinkedIn: https://www.linkedin.com/in/darlan-noetzold-9b5bb2180/
GitHub: https://github.com/DarlanNoetzold

Carregando publicação patrocinada...
2
1

Adicionei o link na Fonte hehe
Para testar, basta rodar o projeto Spring (Ainda não hospedei em nenhum lugar) e fazer uma requisição como a que eu coloquei no post.

No Readme do projeto tem uma doc do Postman que tem mais requisições lá.