Rehearsal: Um arcabouço para teste automatizado de coreografias de serviços web / Rehearsal: A framework for automated testing of web service choreographies


IBICT - Instituto Brasileiro de Informação em Ciência e Tecnologia




Web services are loosely-coupled software components designed to support interoperable machine- to-machine interaction over the Internet. To achieve such interoperability, web services are accesible through W3C web standards, independently of which language, operating system, or hardware platform they are developed. Due to these characteristics, simple web services can be combined in more complex ones. Choreographies are a distributed approach for composing web services. Compared to orchestrations, which have a centralized approach to distributed service management, the interaction among the choreographed services is collaborative with decentralized coordination. Despite the advantages, choreography development, including the testing activities, is not consolidated. The goal of this research is to develop a testing framework to support Test-Driven Development (TDD) of choreographies. Rehearsal, the proposed framework, provides features for automating the testing of (i) atomic web services (unit testing); (ii) their integration in the choreography (integration testing); and (iii) part of or the entire choreography (acceptance testing). These several levels of testing are implemented by using framework features such as the dynamic generation of web service clients, message interception, and the abstraction of the choreography into Java objects. In addition, Rehearsal supports important practices of TDD such as service mocking. To assess the developed framework, we conducted a qualitative exploratory study with Computer Science students. According to the results obtained, the features of Rehearsal were adequate for applying TDD to web service choreography development successfully.


agile methods automated testing coreografias de servicos web desenvolvimento guiado por testes metodos ageis servicos web test-driven development (tdd) testes automatizados web service choreographies web services

Documentos Relacionados