Outils de tests open-source

Preview:

DESCRIPTION

 

Citation preview

Les outils de tests open-source

Valtech AfterWork28 Avril 2009

2

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

Droits dereproduction

Vous êtes libre de :• Reproduire, distribuer et communiquer cette création au public• Modifier cette création

Selon les conditions suivantes :• Paternité :

Vous devez citer le nom de l'auteur ou le titulaire des droits qui vous confère cette autorisation (mais pas d'une manière qui suggérerait qu'il vous soutient ou approuve votre utilisation de l'oeuvre).

• Vous pouvez pour cela inclure la référencede l’auteur au moyen du “post-it” ci-contre

• Rien dans ce contrat ne diminue ou ne restreint le droit moral de l'auteur ou des auteurs.

Pour plus d'infos voir : http://creativecommons.org/licenses/by/3.0/

Présentation de Gilles Mantelgilles point mantel at valtech point fr

http://www.valtech.fr

Présentation de Gilles Mantelgilles point mantel at valtech point fr

http://www.valtech.fr

3

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

Sommaire

1. Introduction

2. Tests unitaires

3. Tests fonctionnels

4. Tests charges / perf

5. Référentiels de tests

4

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

Quelques principes

� Open-source ne signifie pas gratuit

� Importance du TCO « Total Cost of Ownership »• Popularité• Communauté d’utilisateurs• Fréquence des mises à jour• Communauté de développeurs

5

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

6

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

7

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

Cette présentation n’est pas

8

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

Approche

� Une classification simple• 4 catégories:

• unitaire• fonctionnelle• charge / perf• gestionnaires

• Si nécessaire, 5 niveaux: • mourant• Populaire• qui monte• vrai-faux• ?

� Des duels

9

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

Tests unitaires

10

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

Tests unitaires: les classiques

� On ne les présente plus :• JUnit• NUnit• HttpUnit• …

� Variantes:• TestNG• MBUnit

Junit3760000

TestNG2210000

SUnit492000

Google fight

11

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

Tests unitaires: les émergents

� Apparition du Behavior-Driven Development (BDD) en 2003• Evolution naturelle du Test-Driven Development

� Les outils :• JBehave (Java)• Rspec (Ruby)• EasyB (Groovy/Java)• Cucumber (Ruby) � limite framework

12

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

Tests fonctionnels

13

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

Tests fonctionnels: les drivers

� Web:• Selenium (populaire)• Watir (populaire)• Canoo Webtest (populaire)

� Java (Swing / SWT)• Marathon (?)• Frankeinstein (?)• SwtBot (qui monte), Abbot (mourant)

� Autre• Web services: SoapUI (populaire)• Windows: pyWinAuto (?)

Watir493000

Selenium +software1370000

Canoo webtest578000

Google fight

14

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

Tests fonctionnels: le duel

Selenium�Record / Replay avec Selenium IDE�Multi-machine�Multi-navigateur�Multi-langages�Problème sur les sites en Ajax ou avec beaucoup de JavaScript�Grande communauté�Installation sur le serveur web

Watij�Programmation des scripts �Mono machine�Ne supporte que IE�Langage Java seulement�Exécution sans problème de scripts dans son environnement IE �Petite communauté�Installation chez l’utilisateur

15

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

Tests fonctionnels: les frameworks

� Mourant :• FIT (Java, .NET, PHP, C++, Python, Ruby) � absorbé par FitNesse

� Populaire :• FitNesse

� Qui monte :• Robot

� ? :• Concordion• Cucumber

Robot framework

5660

FitNesse524000

Concordion4990

Google fight

16

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

Tests charge / perf

17

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

Charges / Performance

� Mourant: • OpenSTA

� Populaire :• JMeter

� Qui monte:• Tsung

� Vrai-Faux :• WebLoad

OpenSTA50600

JMeter714000

Google fight

18

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

Tests charges / perf: le duel

OpenSTA�sourceforge.net�GNU GPL�First release 09/2000�Latest release 10/2007�Windows-based

JMeter�apache.org�Apache license 2.0�First release 03/2001�Latest release 06/2008�Java-based�Vérification de la réponse

19

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

Référentiels de tests

20

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

Référentiels de tests

� Populaire :• TestLink• FitNesse

� Qui monte:• Salomé-TMF

Salomé-TMF1960

TestLink168000

FitNesse524000

Google fight

21

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

Référentiels de tests: le duel

TestLink�GNU GPL�sourceforge.net�Apparition: 09/2003, dernière release: 04/2009

�Très simple à mettre en œuvre : PHP�IHM rustique�Grande communauté�Lancement de scripts automatisés expérimental�Import/Export natif, pas d’import par Word (CSV,XML)�Plusieurs type de rapports par défaut�Gestion administrative des écrans

�Plugin JIRA

Salomé-TMF�GNU GPL�forge.ow2.org�Apparition: 2005, dernière release: 2007

�Installation Java avec un JDK�IHM excellente�Petite communauté�Lancement de scripts prévu nativement�Plugin Import/Export Word Excel

�Peu de rapports : plugin supplémentaire�Pas de possibilité de modification d’écran

22

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

Conclusion

23

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

Que faut-il retenir ?

� Couverture de l’ensemble du spectre fonctionnel

� Ciblé technologiquement

� L’open-source aime l’open-source

� L’agilité aime l’open-source• “Do the simplest thing that can possibly work”

24

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

Ressources

Sites web :• http://www.opensourcetesting.org/• http://openqa.org/

25

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

Questions / Réponses

26

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

27

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable

28

Ce document est la propriété de Valtech. Il ne peut être communiqué à des tiers sans son autorisation écrite préalable