automatisations des tests fonctionnels avec robot framework

21
Automatisation des tests fonctionnels avec Robot Framework SoftShake Genève 25 oct 2013 Laurent Bristiel vendredi 25 octobre 13

Upload: laurent-bristiel

Post on 06-May-2015

1.137 views

Category:

Documents


9 download

DESCRIPTION

Automatisations des tests fonctionnels avec Robot Framework

TRANSCRIPT

Page 1: Automatisations des tests fonctionnels avec Robot Framework

Automatisation des tests fonctionnels

avec Robot Framework

SoftShakeGenève

25 oct 2013

Laurent Bristiel

vendredi 25 octobre 13

Page 2: Automatisations des tests fonctionnels avec Robot Framework

Laurent BristielIngénieur en tests logiciels

Qui suis-je ?

vendredi 25 octobre 13

Page 3: Automatisations des tests fonctionnels avec Robot Framework

Qui êtes vous ?

des testeurs plutôt que des développeurs

travaillant sur produits plutôt que projets

dans le monde applicatif/web plutôt que mobile

en méthodologie Agile plutôt que traditionnelle

vendredi 25 octobre 13

Page 4: Automatisations des tests fonctionnels avec Robot Framework

Quels tests ?

Tests unitaires

End 2 End

Tests exploratoires

Tests de composant

vendredi 25 octobre 13

Page 5: Automatisations des tests fonctionnels avec Robot Framework

Pourquoi automatiser ?

par paresse

par prudence

par sagesse

vendredi 25 octobre 13

Page 6: Automatisations des tests fonctionnels avec Robot Framework

Quand automatiser ?

avant le développement

pendant le développement

après le développement

vendredi 25 octobre 13

Page 7: Automatisations des tests fonctionnels avec Robot Framework

Quel outil ?

vendredi 25 octobre 13

Page 8: Automatisations des tests fonctionnels avec Robot Framework

Robot Framework

Framework générique d’automatisation de tests

Open Source license Apache 2.0

Sponsorisé par Nokia Siemens Networks

Implémenté en Python

Version actuelle 2.8.1 (juin 2013)

Propose plusieurs approches de test cases

vendredi 25 octobre 13

Page 9: Automatisations des tests fonctionnels avec Robot Framework

Architecture

un test case est un fichier texte

un test case contient une suite de keywords et de paramètres

les keywords sont natifs ou développés en Robot ou Python

Robot exécute les keywords jusqu'a ce qu'il rencontre une exception

si exception alors KO sinon OK

génération d'un rapport

fichier de log

vendredi 25 octobre 13

Page 10: Automatisations des tests fonctionnels avec Robot Framework

Architecture

Librairies

Logiciel testé

vendredi 25 octobre 13

Page 11: Automatisations des tests fonctionnels avec Robot Framework

Keyword-driven

vendredi 25 octobre 13

Page 12: Automatisations des tests fonctionnels avec Robot Framework

data-driven

vendredi 25 octobre 13

Page 13: Automatisations des tests fonctionnels avec Robot Framework

behaviour-driven (BDD)

vendredi 25 octobre 13

Page 14: Automatisations des tests fonctionnels avec Robot Framework

LIVE CODINGvérifications fichiers déployés

vendredi 25 octobre 13

Page 15: Automatisations des tests fonctionnels avec Robot Framework

tests via l’API REST

LIVE CODING

vendredi 25 octobre 13

Page 16: Automatisations des tests fonctionnels avec Robot Framework

tests via l’interface graphique web

LIVE CODING

vendredi 25 octobre 13

Page 17: Automatisations des tests fonctionnels avec Robot Framework

Moody’s : 800 tests sur 5 produitsFinance, C++, SQL, Windows

Robot utilisé par équipes fonc. & techniques

XLS pour paramètres des tests

ForgeRock : 300 tests sur 3 produits Identité, Java, BD, JSON, REST, Linux, Mac, backbone.js

tests hétérogènes et multi-plateformes (OS, BD, Java...)

optimisation performance par setup/teardown multi-niveaux

Retour d’experience

vendredi 25 octobre 13

Page 18: Automatisations des tests fonctionnels avec Robot Framework

Atouts

léger, simple, rapide

tests lisibles

accessibles à des testeurs non techniques

point d’entrée unique pour tests hétérogènes

très nombreuses bibliothèques Python disponibles

vendredi 25 octobre 13

Page 19: Automatisations des tests fonctionnels avec Robot Framework

Limites

DSL Robot limité

IDE propriétaire et peu évolué (RIDE)

risque de faire du code non maintenable

audacieux de miser sur la rédaction des tests par les équipes produit et développement

risque d’isolement des testeurs sur leur framework

vendredi 25 octobre 13

Page 20: Automatisations des tests fonctionnels avec Robot Framework

Bonus

Plugin Jenkins

Plugin Maven

Plugin éditeurs (Eclipse, Vim, Textmate)

Mailing list active

vendredi 25 octobre 13

Page 21: Automatisations des tests fonctionnels avec Robot Framework

[email protected]

laurent.bristiel.com

Automatisation des tests fonctionnels avec Robot Framework

Merci !Questions ?

http://robotframework.org

vendredi 25 octobre 13