Estendendo rest-unit : geração baseada em U2TP de drivers e dados de teste para RESTful Web Services / Extending rest-unit: drivers and test data generation based on u2tp for restful web services

AUTOR(ES)
DATA DE PUBLICAÇÃO

2010

RESUMO

Os RESTful Web services – Web services baseados em REST (REpresentational State Transfer) – são uma solução que vem sendo amplamente utilizada para desenvolvimento de aplicações Web 2.0 e publicação de APIs na internet pela interface simples e de fácil entendimento, aliado ao suporte de frameworks de alta produtividade. Os RESTful Web services, assim como todos os sistemas de software, devem ser testados para que atinjam o nível de qualidade aceitável para que possam ser utilizados por outros sistemas com confiança. Essa disciplina de testes deve ser integrada ao desenvolvimento, ocorrendo desde o início do projeto e sendo aplicada ao longo de todo ciclo de vida. No trabalho de diplomação de Filipe Borges (2009) foi proposta uma solução (REST-Unit) para gerar automaticamente os drivers de testes a partir de modelos especificados no padrão U2TP (UML 2.0 Test Profile), para validação do comportamento de RESTful Web services. Baseado em REST-Unit, foi desenvolvido neste trabalho REST-Unit+, cujo objetivo é estender a geração automatizada dos drivers de teste, propondo uma solução para relacioná-los com seus respectivos dados de teste, criando repositórios e partições de dados. Através disso, os testes gerados ficam mais completos e sua execução é facilitada, pois os tipos de dados aceitos nos testes já estão previamente especificados e documentados. REST-Unit+ é uma solução para gerar os drivers e dados de teste a partir de um modelo U2TP. O modelo, quando exportado para XMI, permite que gere-se o código de teste. Um protótipo foi implementado para validação do algoritmo, e aplicado no decorrer de um exemplo que demonstra a aplicação completa desta solução. Este protótipo pode gerar a partir de um modelo o driver e os dados para testes de um Web Service RESTful. O tempo despendido na especificação dos casos de teste é compensado pelo tempo economizado com a geração do código de testes. Além disso, tem-se como vantagem o modelo bem documentado em UML dos casos de teste e, principalmente, dos dados de teste (repositórios, partições e instâncias) utilizados para estes casos de teste, e a qualidade maior que se alcança trabalhando em um nível mais alto de abstração.

ASSUNTO(S)

engenharia : software u2tp software test serviços web test data test code generation restful web services rest

Documentos Relacionados