835 articles – 1515 Notices  [english version]
HAL : hal-00483085, version 1

Fiche détaillée  Récupérer au format
Empirical Software Engineering 15, 4 (2010) 346-379
Testing Peer-to-Peer Systems
Eduardo Cunha De Almeida ( ) 1, Gerson Sunyé 1, 2, Yves Le Traon 3, Patrick Valduriez 2, 4
Grid'5000 Collaboration(s)
(08/2010)

Peer-to-peer (P2P) offers good solutions for many applications such as large data sharing and collaboration in social networks. Thus, it appears as a powerful paradigm to develop scalable distributed applications, as reflected by the increasing number of emerging projects based on this technology. However, building trustworthy P2P applications is difficult because they must be deployed on a large number of autonomous nodes, which may refuse to answer to some requests and even leave the system unexpectedly. This volatility of nodes is a common behavior in P2P systems and may be interpreted as a fault during tests (i.e., failed node). In this work, we present a framework and a methodology for testing P2P applications. The framework is based on the individual control of nodes, allowing test cases to precisely control the volatility of nodes during their execution. We validated this framework through implementation and experimentation on an open-source P2P system. The experimentation tests the behavior of the system on different conditions of volatility and shows how the tests were able to detect complex implementation problems.
1 :  Laboratoire d'Informatique de Nantes Atlantique (LINA)
CNRS : UMR6241 – Université de Nantes – École Nationale Supérieure des Mines - Nantes
2 :  ATLAS (INRIA)
INRIA – Université de Nantes
3 :  Laboratory of Advanced Software SYstems (LASSY)
Université du Luxembourg
4 :  Laboratoire d'Informatique de Robotique et de Microélectronique de Montpellier (LIRMM)
CNRS : UMR5506 – Université Montpellier II - Sciences et techniques
Informatique/Génie logiciel
Software Testing – Peer-to-Peer Systems – Distributed Hash Tables – Testing Methodology – Experimental Procedure