Présentation de Robot framework

gilleslenfant 5,099 views 11 slides May 27, 2014
Slide 1
Slide 1 of 11
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11

About This Presentation

No description available for this slideshow.


Slide Content

1Robot Framework
Automatisation des tests fonctionnels
(ATDD)
http://robotframework.org/

2L'architecture
Vos scénarios
Vos données
Robot Framework
Built in
+
Standard
Tierce partie
(ex : Selenium2, ssh,...)
Personnelles
(ex : Drupal, ...)
Libraries
RF
Libraries
RF
Scénarios (HTML)
Rapports (HTML)

3
En bref

Framework générique

Keyword driven

Data driven

À la Gherkin (Behat, Cucumber, Lettuce)

Langages

Python / Jython / Iron Python

Java

Autres langages via XMLRPC

API / Hooks pour Java et Python

Vos Libraries / Keywords

Vos sources de données

4
Libraries

Fournissent des « Keywords » pour une cible de tests
particulière :

Navigateur

SSH

Protocole de communication (FTP, ...)

...

Réalisables en :

Python (+ C/C++),

Java,

Jython

Iron Python + autre langage pour CLR .Net
Cohérence langages pour RF et Libraries

5
Libraries standard

Builtin : Keywords les plus fréquemment utilisés (comparaison,
accès aux variables, ...). « Builtin » = ne nécessite pas d'import
explicite

OperatingSystem : «cd », « ls », « mkdir », « cp », « mv », ...

Screenshot : comme son nom l'indique, généralement pour
figurer dans le CR de test

Collections : manipulez des listes et des dictionnaires

Et aussi : String, Dialogs, XML, Process, Remote

6
Librairies tierces

AndroidLibrary et IOSLibrary : Pilotage et introspection d'applis
Android et iOS via Calabash

ArchiveLibrary : Exploration des zip, tar.gz et tar.bz2

AutoItLibrary : Contrôle et vérification d'appli Windows via AutoIt

DatabaseLibrary : Du SQL dans RobotFramework

FTPLibrary, HTTPLibrary, SSHLibrary : Devinez quoi...

Selenium2Library : Contrôle de Firefox ou Chrome, inspection du
HTML

SudsLibrary : Web services SOAP

EclipseLibrary et SwingLibrary : Applications Java avec UI

Et aussi... http://robotframework.org/#test-libraries

Et encore...
https://pypi.python.org/pypi?%3Aaction=search&term=robotframework

7
Votre Library

Peut être fournie dans les tests eux-mêmes, composée avec les
keywords existants
*** Settings ***
Documentation Ma belle library perso
...
... bla bla bla
*** Keywords ***
Calculator has been cleared
Push button C
User types "${expression}"
Push buttons ${expression}

8Votre scénario

En HTML

Dans des tables

En CSV

Idem...

En texte brut

C'est le plus simple...

9
Exemple de suite
(minimaliste)
*** Settings ***
Documentation Example test cases using the keyword-driven testing approach.
...
... All tests contain a workflow constructed from keywords in
... `CalculatorLibrary`. Creating new tests or editing existing
... is easy even for people without programming skills.
...
Library CalculatorLibrary
*** Test Cases ***
Push button
Push button 1
Result should be 1
Push multiple buttons
Push button 1
Push button 2
Result should be 12
Clear
Push button 1
Push button C
Result should be ${EMPTY} # ${EMPTY} is a built-in variable

10Support auteur

Editeurs

Modes pour VIM, Emacs, SublimeText, ...

Plugin IntelliJ (PyCharm, PHPStorm, ...) et Eclipse avec
complétion intelligente

RIDE : IDE + Testrunner dédié

Autres...

Sphinx : intégration des tests dans la doc
Scénarios de test
=================
.. literalinclude:: signin_test.txt
:language: robotframework

11
Support PIC

Compatible avec les « testrunners » Python classiques (unittest,
test.py, nose, ...)

Compatible JUnit

Compatible Jenkins / Travis

option –-xunit result.xml
Tags