Testes Funcionais de Web Services RESTful a partir de Modelos UML

  • Thiago Silva-de-Souza UFRJ / UNIGRANRIO
  • Alexandre Luis Correa UNIRIO
  • Eber Assis Schmitz UFRJ
  • Antonio Juarez Alencar UFRJ

Resumo


Este trabalho apresenta uma abordagem para geração de casos de teste de Web Services RESTful. A abordagem proposta utiliza técnicas de transformação de modelos para gerar casos de teste independentes de plataforma a partir de modelos de classes UML enriquecidos com restrições Object Constraint Language (OCL). Tais casos de teste são, então, transformados em casos de teste específicos de plataforma que podem ser usados para verificar a implementação de Web Services RESTful do tipo CRUD. Um estudo experimental mostrou que a proporção de testadores, utilizando técnicas ad hoc, capaz de alcançar ao menos 95% da cobertura de restrições cobertas pela abordagem é de no máximo 20%.
Palavras-chave: Testes Funcionais, Web Services RESTful, Modelos UML

Referências

Agresti, A., & Coull, B. A. (1998). Approximate is better than "exact" for interval estimation of binomial proportions. The American Statistician , 52, p. 119-126.

Askaruinisa, A., & Abirami, A. M. (2010). Test Case Reduction Technique for Semantic Based Web Services. International Journal on Computer Science and Engineering (IJCSE) , 02 (03), p. 566-576.

Bozkurt, M., Harman, M., & Hassoun, Y. (2010). Testing Web Services: A Survey. King's College London, Department of Computer Science, Londres.

Canfora, G., & Penta, M. (2009). Service-Oriented Architectures Testing: A Survey. Software Engineering: International Summer Schools, ISSSE 2006-2008 , p. 78-105.

Chakrabarti, S. K., & Rodriquez, R. (2010). Connectedness testing of RESTful web services. Proceedings of the 3rd India Software Engineering Conference (ISEC '10) (p. 143-152). New York, NY: ACM.

Daigneau, R. (2012). Service Design Patterns: fundamental design solutions for SOAP/WSDL and RESTful Web Services. Upper Saddle River: Pearson.

Delamaro, M. E., Maldonado, J. C., & Jino, M. (2007). Introdução ao Teste de Software. Rio de Janeiro: Elsevier.

Endo, A. T., & Simão, A. d. (2010). Formal Testing Approaches for Service-Oriented Architectures and Web Services: A Systematic Review. USP, São Carlos.

Erl, T., Karmarkar, A., Walmsley, P., Haas, H., Yalcinalp, U., Liu, C. K., et al. (2008). Web service contract: design e versioning for SOA. Crawfordsville: Prentice Hall.

Fielding, R. T. (2000). Architectural styles and the design of network-based software architectures. Tese de Doutorado, University of California, Irvine.

Meszaros, G. (2007). xUnit Test Patterns: refactoring test code. Boston: Pearson.

Noikajana, S., & Suwannasart, T. (2009). An Improved Test Case Generation Method for Web Service Testing from WSDL-S and OCL with Pair-Wise Testing Technique. Proceedings of 33rd Annual IEEE International Computer Software and Applications Conference (pp. 115-123). Washington, DC: IEEE Computer Society.

OMG, Object Management Group. (2003). MDA guide version 1.0.1. OMG.

OMG, Object Management Group. (2010). Object Constraint Language, 2.2. Acesso em 18 de outubro de 2010, disponível em http://www.omg.org/spec/OCL/2.2/PDF

Reza, H., & Van Gilst, D. (2010). A Framework for Testing RESTful Web Services.Proceedings of the Seventh International Conference on Information Technology (p. 216-221). IEEE Computer Society.

Richardson, L., & Ruby, S. (2007). Restful web services. Sebastopol: O'Reilly.

Silva-de-Souza, T. (2012). Uma Abordagem Baseada em Especificação para Testes de Web Services RESTful. Dissertação de Mestrado, PPGI, Universidade Federal do Rio de Janeiro (UFRJ), Rio de Janeiro.

SmartBear. (2011). Acesso em 20 de dezembro de 2011, disponível em soapUI: http://www.soapui.org

Sommerville, I. (2011). Engenharia de software (9. ed. ed.). São Paulo: Pearson.

Triola, M. F. (2008). Introdução à estatística. Rio de Janeiro: LTC.

W3C, World Wide Web Consortium. (2009). Web Application Description Language. Acesso em 15 de novembro de 2011, disponível em http://www.w3.org/Submission/wadl/

W3C, World Wide Web Consortium. (2005). Web Service Semantics - WSDL-S. Acesso em 17 de outubro de 2011, disponível em http://www.w3.org/Submission/WSDL-S/

W3C, World Wide Web Consortium. (2007). Web Services Description Language (WSDL) Version 2.0 Part 1. Acesso em 15 de nov de 2010, disponível em http://www.w3.org/TR/wsdl20/

Warmer, J., & Kleppe, A. (2003). The Object Constraint Language: getting your models ready for MDA (2. ed.). Boston: Addison-Wesley.

Webber, J., Parastatidis, S., & Robinson, I. (2010). REST in Practice. Sebastopol: O'Reilly.

Wohlin, C., Runeson, P., Höst, M., Olhsson, M. C., Regnell, B., & Wesllén, A. (2000). Experimentation in software engineering: an introduction. Norwell: Kluwer Publishers.
Publicado
11/07/2012
SILVA-DE-SOUZA, Thiago; CORREA, Alexandre Luis; SCHMITZ, Eber Assis; ALENCAR, Antonio Juarez. Testes Funcionais de Web Services RESTful a partir de Modelos UML. In: SIMPÓSIO BRASILEIRO DE QUALIDADE DE SOFTWARE (SBQS), 11. , 2012, Fortaleza. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2012 . p. 188-202. DOI: https://doi.org/10.5753/sbqs.2012.15316.