26

Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile

Embed Size (px)

Citation preview

Page 1: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile
Page 2: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile

Tester, Monitorer et Déployer son

application mobile

Page 3: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile

Nicolas Humann

@nicolashumannCTO – REGIONAL DIRECTOR

Philippe Sentenac

@psentenacMBU – REGIONAL DIRECTOR

Adrien Siffermann

@asiffermann FULL STACK DEV - INDEP

Page 4: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile

Mobile DevOps

Page 5: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile

Isoler, suivre et valider les développements

Deux branches principalesDurée de vie infiniemaster : production-readydevelop : intégration

Des branches de supportDurée de vie limitéefeature : développement en parallèlerelease : préparation des livraisonshotfix : corrections en production

Dev…GitFlow

Page 6: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile

…OpsLes 4 Fantastiques

develop0.1.0-alpha.4Version de développement

Integration« INT »

release/* ou hotfix/*1.0.0-beta.0Version à tester

Validation« VAL »

master1.0.0+0Données de production

Preproduction

« PRE »

Déploiement initié manuellement après approbation

Production« PRO »

Page 7: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile

Hockey AppAll you need is

Télécharger vos builds, informer vos utilisateurs, et installer l'application directement sur les devices

Distribution Beta

Suivre la qualité de votre application et obtenir des rapports d'erreur complets

Crash Reporting

Comprendre comment les utilisateurs adoptent et utilisent votre application

Monitoring

Page 8: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile

DEMO Mobile DevOps

Page 9: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile

Des plateformes et technologies variées

Des tailles et résolutions différentes

De multiples navigateurs

La gestion du device et du réseau « instable » (ex. dans le métro)

Développer des apps mobiles de qualitéC’est compliqué

Page 10: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile

« On testera plus tard. Sur mon iPhone, ca marche de toute façon »« Les utilisateurs nous remonteront les bugs » « Les développeurs testent et débuguent ce qu’ils ont conçu, c'est suffisant »« Le test d'application mobile, c'est comme le test de site web. »« Les tests, c’est sympa mais qui va payer pour ça ? »« J’ai un émulateur, pas la peine de tester sur des smartphones »

La phase de test est souventNégligée | Oubliée | Abandonnée

Page 11: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile

80 % des utilisateurs désinstallent une application à cause des crashs/bugs

66 % des app ont une note inférieure ou égale à la moyenne

60% des utilisateurs abandonnent votre app si elle ne se charge pas dans les 3secs

Les utilisateurs, eux, n’oublient pasC’est la sanction immédiate

L'application bloque depuis la maj de ios 10 merci de faire le nécessaire rapidement c'est une horreur!!!

Application qui génère trop de beugue. Il est souvent impossible d'actualiser et de voir nos comptes

L'app daignait planter au moment du Touch ID. Maintenant elle ne se lance même plus et fait planter tout mon système. Ça fait un bail que ça dure. À quand une mise jour qui ne bouffe pas tout le CPU ?

Excellente appli mais depuis la mise à jour vers iOS 10 je n'y ai plus accès ! Obligé de consulter mes comptes sur internet mais ça n'est pas pratique du tout ! J'espère un retour à la normale rapidement sinon je desinstalle !

Nul par rapport aux autres applications des autres banques. Absolument pas clair manque de simplicité.

Page 12: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile

Un vrai casse têteAndroid n’est pas le seul problème

19 000 Android

disponibles sur le marché

74 configurations possibles pour

iOS

A titre d’exemple, aux US, il faut tester134 différents devices pour couvrir 80% des smartphones utilisés

Page 13: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile

Comment tester ?Wait for it

Prenons l’exemple d’une application mobile avec 6 releases, sur 20 configurations

1 x 30 x 6 x 15 min x 20 = 112 joursTESTS RELEASE

SDURÉE

DES TESTSAPPAREILSAPP

Page 14: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile
Page 15: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile
Page 16: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile

Execution identique, à chaque fois sur chaque deviceTesting d’interface extrèmement rapideAccès aux derniers OS et nouveaux téléphonesRapport immédiatement disponible• Screenshots • Utilisation memoire et processeur• Console log, pratique pour le debugging

Au final, on peut réaliser des parcours utilisateurs et tests d’intégrations très simplement.

L’approche automatisée avec XTCThe holy grail ?

Long CyclesRapid Iterations

High Test Realism

Simplistic Tests

Beta Testing

Manual Testing

Automated UI Testing

Unit Testing

Page 17: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile

L’approche automatiséeQuelques exemples d’usages

PRODUCTION

Tester scénarios critiques sur 2

000 devices (i.e. : non regression,

mise à jour du BO « en douce »)

RECETTE

Le fameux cahier de recette

automatisé. Ça rassure toujours

avant un passage en prod

AGILE

Exécuté sur chaque pull request sur les

US principales. Pour une app

toujours fonctionnelle

ANTICIPER

Rejouer l’ensemble de vos

test sur des versions d’OS en béta, en 30 mn.

Ça n’a pas de prix.

Page 18: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile

DEMO Xamarin Test Cloud

Page 19: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile

Créer des tests d'interface utilisateur automatisés tout en C# ou Ruby

Télécharger vos tests sur XTC ou exécuter les sur un simulateur ou votre device

Exécution à partir de Visual Studio ou Xamarin studio

Fonctionne sur toute application: Native, hybride, ou Xamarin

Developper ces testsXamarin.UITest | Calabash

Page 20: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile

Datacenter au Danemark

Devices réinitialisés (hard reset) après chaque tests

IP :• 195.249.159.238• 195.249.159.239

SécuritéLe détail qui compte

Page 21: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile

Les concurrentsAWS Device

Farm Google Cloud Test Lab

Xamarin Test Cloud

Plateforme Android, iOS & Web Android Android, iOS

Framework Appium, Junit, TestNG, Calabash

Instrumentation, Robo Test

Calabach, Nunit, Appium, UITests

Language Java, Ruby, C# Java C#, Ruby

Native App Oui Oui Oui

Hybrid Oui No Oui

Devices 200+ 20+ 2000

Performance Testing Oui Oui Oui

Page 22: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile

N° 22

Mobile DevOpsLa synthèse en « visual »

UWPapk

apk

apk

Unit Test

Simulator

git push

ReleaseManagement

with Approvals

HockeyAppUpdate

Manager

HockeyAppCrash Reports & Feedback

Debugging

Team Build (CI)Test & Code Coverage

Emulator / Devices

Bug Trackin

g

© SQLI GROUP | 2016

Page 23: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile

Visual Studio Team Services : Gratuit

Hockey App : Gratuit

Xamarin Test Cloud : “C’est cool”

Développer des apps mobiles de qualitéC’est pas si compliqué

Page 24: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile
Page 25: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile

@microsoftfrance @Technet_France @msdev_fr

@nicolashumann @psentenac @asiffermann

Page 26: Microsoft experiences'16 - Tester, Monitorer et Déployer son application mobile

Notez cette sessionEt tentez de gagner un Surface Book

Doublez votre chance en répondant aussi au questionnaire de satisfaction globale* Le règlement est disponible sur demande au commissariat général de l’exposition. Image non-

contractuelle