Repository logo
 
Publication

APIbuster Testing Framework

dc.contributor.advisorMalheiro, Maria Benedita Campos Neves
dc.contributor.authorSousa, Pedro Ferreira de
dc.date.accessioned2023-03-15T14:45:27Z
dc.date.available2023-03-15T14:45:27Z
dc.date.issued2022
dc.description.abstractIn recent years, not only the Service-Oriented Architecture (SOA) became a popular paradigm for the development of distributed systems, but there has been significant progress in terms of their testing. Nonetheless, the multiple testing platforms available fail to fulfil the specific requirements of the Moodbuster platform from Instituto de Engenharia de Sistemas e Computadores, Tecnologia e Ciência (INESC TEC) – provide a systematic process to update the test knowledge, configure and test several Representational State Transfer (REST) Application Programming Interface (API) instances. Moreover, the solution should be implemented as another REST API. The goal is to design, implement and test a platform dedicated to the testing of REST API instances. This new testing platform should allow the addition of new instances to test, the configuration and execution of sets of dedicated tests, as well as, collect and store the results. Furthermore, it should support the updating of the testing knowledge with new test categories and properties on a needs basis. This dissertation describes the design, development and testing of APIbuster, a platform dedicated to the testing of REST API instances, such as Moodbuster. The approach relies on the creation and conversion of the test knowledge ontology into the persistent data model followed by the deployment of the platform (REST API and user dashboard) through a data modelling pipeline. The APIbuster prototype was thoroughly and successfully tested considering the functional, performance, load and usability dimensions. To validate the implementation, functional and performance tests were performed regarding each API call. To ascertain the scalability of the platform, the load tests focused on the most de manding functionality. Finally, a standard usability questionnaire was distributed among users to establish the usability score of the platform. The results show that the data modelling pipeline supports the creation and subsequent updating of the testing platform with new test attributes and classes. The pipeline not only converts the testing knowledge ontology into the corresponding persistent data model, but generates a fully operational testing platform instancept_PT
dc.description.abstractNos últimos anos, o desenvolvimento de sistemas distribuídos do tipo Service-Oriented Architecture (SOA) popularizou-se, tendo ocorrido significativos progressos em ter mos de testagem. Contudo, as múltiplas plataformas de testagem existentes não satisfazem as necessidades específicas de testagem de projetos Application Programming Interfaces (API) do tipo Representational State Transfer (REST) como o Moodbuster do Instituto de Engenharia de Sistemas e Computadores, Tecnologia e Ciência (INESC TEC). O INESC TEC necessita de um processo sistemático de atualização, configuração e testagem de múltiplas instâncias API REST. Adicional mente, esta solução deverá ser implementada como mais uma API REST. O objetivo é conceber, implementar e testar uma plataforma de testagem de instâncias API REST. Esta nova plataforma deverá permitir a adição de instâncias de teste, configuração e execução de grupos de testes, assim como, obter e salvaguardar os resultados. Deverá ainda viabilizar a atualização do conhecimento do domínio mediante a especificação de novas categorias e atributos de teste. Esta dissertação descreve a conceção, desenvolvimento e testagem da plataforma APIbuster dedicada à testagem de instâncias API REST, como as do projecto Moodbuster. A abordagem baseia-se na definição e conversão da ontologia de representação do conhecimento sobre a testagem de API REST no correspondente modelo persistente de dados, seguida da criação da plataforma (REST API e portal do utilizador) através de um processamento sequencial dedicado. O protótipo da APIbuster foi testado detalhadamente com sucesso em relação à funcionalidade, desempenho, carga e usabilidade. Foram efetuados testes funcionais e de desempenho a cada chamada da API para validar a implementação. Para determinar a escalabilidade da plataforma, os testes de carga focaram-se na funcionalidade mais exigente. Finalmente, o questionário de usabilidade foi distribuído entre os utilizadores para definir a usabilidade da plataforma desenvolvida. Os resultados mostram que o processamento sequencial desenvolvido suporta a criação e a subsequente atualização, com novos atributos e categorias, da plataforma de testagem. Este processo não converte apenas a ontologia no modelo de dados persistente, mas gera uma instância atualizada e operacional da plataformapt_PT
dc.identifier.tid203113683pt_PT
dc.identifier.urihttp://hdl.handle.net/10400.22/22512
dc.language.isoengpt_PT
dc.rights.urihttp://creativecommons.org/licenses/by-nc-nd/4.0/pt_PT
dc.subjectAPIbusterpt_PT
dc.subjectData modelling pipelinept_PT
dc.subjectREST APIpt_PT
dc.subjectSOApt_PT
dc.subjectTesting platformpt_PT
dc.titleAPIbuster Testing Frameworkpt_PT
dc.typemaster thesis
dspace.entity.typePublication
rcaap.rightsopenAccesspt_PT
rcaap.typemasterThesispt_PT
thesis.degree.nameMestrado em Engenharia Eletrotécnica e de Computadores - Telecomunicaçõespt_PT

Files

Original bundle
Now showing 1 - 1 of 1
No Thumbnail Available
Name:
DM_PedroSousa_2022_MEEC.pdf
Size:
8.04 MB
Format:
Adobe Portable Document Format
License bundle
Now showing 1 - 1 of 1
No Thumbnail Available
Name:
license.txt
Size:
1.71 KB
Format:
Item-specific license agreed upon to submission
Description: