construireson lab de tests mobiles...les objectifs du lab’ de tests mobiles 1. tester les...

51
Construire son lab de tests mobiles Guillaume Deshayes Akil Salhab 26 Novembre 2015

Upload: others

Post on 02-Aug-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Construire son lab de tests mobiles

Guillaume DeshayesAkil Salhab26 Novembre 2015

Page 2: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

2

50 000+clients dans le monde

N°1sur les solutions de tests

7èmeéditeur de logiciels

Page 3: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Quelques-uns de nos clients sur le test logiciel

3

Page 4: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Agenda

Jeudi

265

Combattre les idées reçues

Pourquoi construire un lab de tests mobile?

Comment le construire?

Un jour avec…HP Mobile Center

Q&A

Page 5: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Avant Propos

5

Page 6: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Hall of Fame

6PS: envoyez moi les vôtres à [email protected]

Page 7: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Combattre les idées reçues

7

Page 8: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Combattre les idées reçues

« Je n’ai pas le temps d’automatiser »

« Je ne peux pas tout tester »

« Je n’ai pas les moyens

d’automatiser »

8

Page 9: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Pourquoi construire un lab de test mobile?

9

Page 10: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Différents enjeux en fonction des profils

10

« Maximiser le temps passé au développement de nouvelles fonctionnalités »

DevTesteur

« Accélérer le process de livraison de mes apps »

Integration Manager

« Eviter les régressions en production »

Product Owner

« Être capable d’avoir une couverture de test optimale »

Testeur Fonctionnel

Page 11: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Les objectifs du lab’ de tests mobiles

1. Tester les différents OS/Versions

2. Automatiser les tests fonctionnels

3. Se connecter à la chaine

d’intégration continue

4. Paralléliser l’exécution des tests

5. Centraliser la gestion des mobiles

6. Tracer et auditer les campagnes

11

Page 12: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Les problématiques à prendre en compte

12

Variété des plateformes à tester

Nombreuses tailles et résolutions d’écran Différents browsers Variation des conditions

réseaux

Page 13: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Les critères de succès (selon nos clients)

13

Déploiement

Plateformes

Test Manuel

Automatisation

PerformanceSupervision & Analytics

Integration

Entreprise Readiness

Licensing

Page 14: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Les critères de succès (selon nos clients)

14

Déploiement

Plateformes

Test Manuel

Automatisation

PerformanceSupervision & Analytics

Integration

Entreprise Readiness

Licensing

Plateformes

Plateformes supportées, versions supportées, support des gestures, intéractions avec les fonctions natives du mobile

Page 15: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Les critères de succès (selon nos clients)

15

Déploiement

Plateformes

Test Manuel

Automatisation

PerformanceSupervision & Analytics

Integration

Entreprise Readiness

Licensing

Déploiement

Déploiement automatique des apps, gestion des versions et des devices

Page 16: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Les critères de succès (selon nos clients)

16

Déploiement

Plateformes

Test Manuel

Automatisation

PerformanceSupervision & Analytics

Integration

Entreprise Readiness

Licensing

Test Manuel

Possibilité de se connecter et d’intéragiravec les devices à distance

Page 17: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Les critères de succès (selon nos clients)

17

Déploiement

Plateformes

Test Manuel

Automatisation

PerformanceSupervision & Analytics

Integration

Entreprise Readiness

Licensing

Automatisation

Enregistrement/Rejeu de tests fonctionnels, reconnaissance d’objets/d’images, point de contrôle, reporting

Page 18: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Les critères de succès (selon nos clients)

18

Déploiement

Plateformes

Test Manuel

Automatisation

PerformanceSupervision & Analytics

Integration

Entreprise Readiness

Licensing

Performance

Rapidité et fiabilité de l’automate, fluidité du controle des devices àdistance

Page 19: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Les critères de succès (selon nos clients)

19

Déploiement

Plateformes

Test Manuel

Automatisation

PerformanceSupervision & Analytics

Integration

Entreprise Readiness

Licensing

Supervision & Analytics

Possibilité de suivre la stabilité en production, accéder aux crashes trail/logs

Page 20: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Les critères de succès (selon nos clients)

20

Déploiement

Plateformes

Test Manuel

Automatisation

PerformanceSupervision & Analytics

Integration

Entreprise Readiness

Licensing

Intégration

Disponibilité d’interface avec les outilsde gestion de code, les plateformesd’intégration continue, les gestionnairesd’anomalies

Page 21: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Les critères de succès (selon nos clients)

21

Déploiement

Plateformes

Test Manuel

Automatisation

PerformanceSupervision & Analytics

Integration

Entreprise Readiness

Licensing

Entreprise Readiness

Dynamisme et vision de l’éditeur, réactivité de la communauté/support, présence de compétences sur le marché, possibilité de formations

Page 22: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Les critères de succès (selon nos clients)

22

Déploiement

Plateformes

Test Manuel

Automatisation

PerformanceSupervision & Analytics

Integration

Entreprise Readiness

Licensing

Licensing

Compétitivité des prix, simplicité du modèle de license

Page 23: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Comment construire son lab?

23

Page 24: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

HPE vs OpenSource?

24

La stratégie de HEWLETT PACKARD ENTREPRISE est de proposer des solutions ouvertes et modulaires, capables de

s’interfacer avec les standards du marché

Page 25: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

HPE décide de s’appuyer sur les standards du marché

25

Source Code ManagementIDE Build Management Test unitaires Test Management Crash Analytics

Page 26: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Architecture de notre lab’ de démo HP Mobile Center

26

Visual Studio HP LeanFT HP AppPulse Mobile

Git

Page 27: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Un jour avec… HP Mobile Center

27

Page 28: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Contexte: MAJ de l’application Android BlaBlaCar

28

Page 29: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Programme de la journée

29

Améliorer la View « Publication » de mon application Android

Mettre à jour mon test unitaire dans Visual Studio

Commit du code et push dans mon repository GIT

(Pause café) – Détection du changement par Jenkins et lancement du test automatisé

Vérifier que mon job Jenkins est OK et analyse du rapport

Consulter les crashes de la veille (si j’ai le temps)

9:00

10:00

10:30

10:45

11:00

11:30

Page 30: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Je décide de faire évoluer l’écran Publication, avec une recommandation

30

VERSION 1.4 VERSION 1.5

Page 31: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Je compile mon nouvel APK et l’upload sur HP MC

31

APK

Upload(*.apk, URL)

Page 32: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Je mets à jour mon test unitaire depuis Visual Studio

32

Page 33: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

J’utilise l’object identifier pour la MAJ de mon test

33

Page 34: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Je mets à jour mon Application Model

34

Page 35: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

J’ajoute un contrôle sur ce nouveau label dans mon code

35

Page 36: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Je compile et upload mes sources dans GIT

36

Page 37: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Jenkins détecte un changement et lance un test automatisé

37

Page 38: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

NUnit exécute le test mobile sur un device réel

38

Page 39: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Je vérifie le statut du job dans Jenkins

39

Page 40: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Je consulte le rapport d’exécution de test

40

Page 41: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Récapitulatif de l’architecture fonctionnelle de la démo

41

Serveur Git Serveur Jenkins

Serveur HP Mobile CenterCommit des

modifications1

Polling des nouveaux changements 2

Locking du terminal4

Déclenchement du jobExécution du test LeanFT3

Rapport d’exécution du test5

Samsung S5

Exécution des commandes Détection des évènements générés par le mobile

Page 42: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Démonstration

42

Page 43: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Et comme il me reste du temps…

43

Page 44: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Je regarde les crashes dans AppPulse Mobile

44

Page 45: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

J’analyse un crash sur une action spécifique

45

Page 46: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Je créé une anomalie dans JIRA

46

Page 47: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Démonstration

47

Page 48: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Wrap up!

48

Page 49: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Récap’

49

Grâce au lab’ HP MOBILE CENTER, nous avons:

ü Automatisé un test pour notre application mobile Android à partir d’un script écrit en C#

ü Capitalisé sur les standards Open Source de l’intégration continue

ü Exécuté automatiquement notre test sur des devices réels

ü Contrôlé la stabilité de notre application en production

Page 50: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Passez nous voir!

50

Retrouvez-nous sur le site ou le stand

Hewlett Packard Entreprise

et participez au tirage au sort pour gagner une montre TomTom Runner

Page 51: Construireson lab de tests mobiles...Les objectifs du lab’ de tests mobiles 1. Tester les différents OS/Versions 2. Automatiser les tests fonctionnels 3. Se connecter à la chaine

Merci

51