Usando Esquema GraphQL para Geração de Consultas de Forma Aleatória
Resumo
Desenvolvido pelo Facebook em 2012, o GraphQL tem se tornado uma alternativa popular para os desenvolvedores na construção de suas APIs Web. Sua principal característica é retornar apenas os dados solicitados pelo cliente da API, evitando o tráfego e processamento desnecessários, o que torna as APIs GraphQL flexíveis às necessidades dos clientes. Essas características levaram a uma adoção crescente do GraphQL na construção de APIs Web. Porém, à medida que seu uso cresce, torna-se ainda mais importante garantir a confiabilidade dos softwares em produção, evitando erros de inconsistência de dados, validação de campos ou simples erros que possam ter passado despercebidos durante o desenvolvimento do software. Nesse contexto, este trabalho tem como objetivo explorar a geração aleatória e automática de consultas válidas para testar APIs GraphQL, visando auxiliar na criação de casos de teste e reduzir a necessidade de trabalho humano dispensável na geração desses casos, ao mesmo tempo em que possibilita aumentar a confiabilidade das APIs GraphQL. Utilizando a linguagem de programação funcional Haskell e a biblioteca QuickCheck, este trabalho busca auxiliar no desenvolvimento de casos de teste, assim contribuindo na confiabilidade dos sistemas desenvolvidos que utilizam a tecnologia GraphQL. A abordagem utilizada neste trabalho mostrou-se promissora, pois permitiu a geração de milhares de consultas bem tipadas de acordo com a especificação do esquema, as quais foram consideradas válidas por um sistema de validação.
Palavras-chave:
Geração de Código Aleatório, GraphQL, Teste de APIs
Publicado
25/09/2023
Como Citar
ZAGO, Natanael; BRAGA, Andrei; MELLO, Braulio; FEITOSA, Samuel.
Usando Esquema GraphQL para Geração de Consultas de Forma Aleatória. In: SIMPÓSIO BRASILEIRO DE LINGUAGENS DE PROGRAMAÇÃO (SBLP), 27. , 2023, Campo Grande/MS.
Anais [...].
Porto Alegre: Sociedade Brasileira de Computação,
2023
.
p. 17–24.