15. HITEMA – Groupama Gan Vie L’automatisation des tests fonctionnels SIMON Emeline 14 2) Les outils à disposition : payants Je n’évoquerai ici que quelques outils, car il en existe un grand nombre, tout comme sur PC. TouchTest est un outil de test mobile autonome développé par SOASTA. Il nécessite d'installer un agent dans le code source de l'application, ainsi qu'un client sur le téléphone. SEETEST est un outil développé par EXPERITEST et JAMO est un outil de test mobile développé par JAMO Solution Ces outils n'ont pas besoin que le mobile soit jailbreaké2 ; aussi le même test effectué sur un Android pour une application fonctionnera sur les autres OS supportés (iOS, BlackBerry, Windows Phone). L'outil peut être intégré à QTP, TestComplete, Visual Studio, etc… 3) Les outils à disposition : gratuits MonkeyTalk, appartenant à la société Gorilla Logic, est un outil permettant l'automatisation des tests fonctionnels pour les applications mobile natives et hybrides (iOS et Android). Gratuit, open source, simple à utiliser, efficace, MonkeyTalk ne demande pas que l'appli soit jailbreacké. Appium est un outil open source d'automatisation des tests pour les applications mobile natives et hybrides (iOS et Android), utilisant le WebDriver JSON wire protocol. Appium vise à automatiser n'importe quelle application mobile depuis n'importe quel langage et n'importe quel système de test, avec un accès complet au API back-end et aux bases de données à partir du code test. 2 Jailbreak : débridage d’un appareil mobile tournant sous IOS pour accéder à toutes les fonctionnalités du système d’exploitation.
10. HITEMA – Groupama Gan Vie L’automatisation des tests fonctionnels SIMON Emeline 9 Cette opération de préparation de planning pré-recette, permet de donner une date de fin de recette aux responsables. Parfois – et c’est le cas chez Groupama gan vie – la phase de recette est suivi d’une phase d’homologation. Cette phase se présente comme une phase de recette mais de façon bien plus synthétique : c’est la phase de pré-production. Il faut donc également prévoir dans les plannings cette phase ainsi que les réunions adéquates. La Moa se chargeant de la recette, c’est bien souvent des référents métiers qui se chargent de l’homologation. Ceux sont eux qui décident si oui ou non il est possible de mettre en production. Ce n’est en aucun cas la MOA qui donne le GO pour la mise en production. Le planning est donc un élément indispensable dans un projet pour toutes les ressources de celui-ci. 2) Jeux de données et base de données Qu’elle soit manuelle ou automatisée, la recette fonctionnelle nécessite dans tous les cas des données. Celles-ci sont utilisées pour effectuer des tests. Cela peut être des noms, des numéros de téléphone, des adresses…. Toutes ces informations doivent être préparées afin de ne pas perdre de temps durant la phase de test. Si une ou plusieurs informations venaient à manquer durant le cycle de recette, cela ralentirait le processus : il faut chercher les informations, les préparer et ré-exécuter les tests. C’est pourquoi il est idéal de fabriquer un fichier référence regroupant l’ensemble des données qui seront utilisées : - Pour une recette manuelle, les testeurs s’appuieront sur ce fichier pour préparer le cahier de test et si besoin pendant les tests en complément. - Pour une recette automatisée, c’est le logiciel utilisé qui aura pour point d’appui ce fichier. Il s’alimentera avec les informations contenues dans ce fichier, en fonction des paramètres fournis par les testeurs. De même, la phase de préparation nécessite avant tout une base de données pour les tests. Il faut donc créer la base en fonction des spécifications si elle n’existe pas. Dans le cas d’évolution sur une application existante, il faut s’assurer que la base a bien été modifiée en conséquence. Celle-ci doit également être soumise aux tests. 3) Le cahier de recette Avant de démarrer l’exécution de la recette – celle-ci ne se fait pas « à l’aveugle » - il faut rédiger un cahier de recette. J’ai eu l’occasion dans mon travail de rédiger plusieurs cahiers de tests et donc d’apprendre à le faire. En effet, ceux-ci se préparent en suivant les spécifications fonctionnelles rédigées après l’expression de besoin. Les spécifications fonctionnelles (détaillées ou générales) décrivent le fonctionnement de l’application, de ses modules ainsi que de ses interfaces. Elles répertorient alors la totalité des attentes du client détaillées sous formes de points à traiter. Le travail à réaliser est alors de prendre un à un les points énoncés et de préparer des scénarios de test. Un scénario, comporte de une à plusieurs manipulations à effectuer sur l’application.
4. HITEMA – Groupama Gan Vie L’automatisation des tests fonctionnels SIMON Emeline 3 Introduction De nos jours, la robotisation est très présente dans l’industrie, ainsi que dans l’informatique. La robotisation des tests en informatique, c’est-à-dire le principe de réaliser les tests par un ordinateur est appelé l’automatisation des tests. La qualité est également très normée, telle que ISO 2000, et il est nécessaire de la contrôler. Lorsqu’une application est créée ou améliorée dans une entreprise, elle est soumise à différents types de tests. Ceux-ci permettent de vérifier le bon fonctionnement de ce qui a été développé et contrôler que la solution correspond à ce que le client a demandé. Je m’attarderai dans un premier temps sur les tests fonctionnels, tout d’abord en expliquant ce que sont les plans et cahier de tests (aussi appelés Recette) utilisés pour les réaliser. Ensuite je vous présenterai les différents outils de recettage qui existent et ceux utilisés dans mon propre domaine professionnel. Enfin, je répondrai à la question concernant la pertinence et la possibilité de l’automatisation totale des tests fonctionnels. Nous sommes en effet en droit de nous demander si les robots sont en mesure de réaliser le travail effectué par des humains aujourd’hui.
The automatic telephone switchboard was introduced in 1892 along with dial telephones.[35] By 1929, 31.9% of the Bell system was automatic. Automatic telephone switching originally used vacuum tube amplifiers and electro-mechanical switches, which consumed a large amount of electricity. Call volume eventually grew so fast that it was feared the telephone system would consume all electricity production, prompting Bell Labs to begin research on the transistor.[36]
Les nombreux éditeurs d’outils de tests fonctionnels ont des approches différentes. On constate que certains offrent un référentiel contenant une collection d’objets-types que le produit est susceptible de rencontrer dans la majorité des cas. D’un autre côté, certains préfèrent initialiser le référentiel uniquement avec les objets reconnus et utilisés par les différents cas de tests.

L’utilisation des données issues des automates ainsi que les captures d’écrans permettent de réaliser des comparaisons et ainsi détecter des impacts impossibles à déceler avec des tests manuels. La comparaison des résultats des exécutions sur différent devices vous permet de certifier la portabilité de vos applications sur plusieurs systèmes. Un tel outil révolutionne la gestion du risque sur vos projets.

L’automatisation du test logiciel n’est ni aussi simple ni aussi rapide que semble l’indiquer cette appellation. Les outils de test logiciel peuvent s’avérer coûteux, tandis que la configuration, l’exécution et l’analyse des résultats de test exigent un effort manuel important. Toutefois, par l’usage d’outils adéquats, notamment de logiciels en Open source, et de processus et frameworks d’automatisation appropriés, les entreprises sont en mesure de réaliser des économies de coûts et de bénéficier de la qualité du test logiciel automatisé.


7. HITEMA – Groupama Gan Vie L’automatisation des tests fonctionnels SIMON Emeline 6 Les différents types de tests : Les tests unitaires Ceux-ci sont réalisés par les développeurs/concepteurs de l’application. Ils sont effectués pour tester les modules de l’application, c’est-à-dire les bouts de code. A chaque modification du code, ces tests (automatisés) sont rejoués afin de vérifier que celui-ci fonctionne correctement. Les tests d’intégration logiciel : Ceux-ci suivent les tests unitaires et ils couvrent toute l’application. Ces tests comportent des aspects techniques et fonctionnels. Les tests techniques applicatifs : Lorsque la livraison a été effectuée, il est nécessaire de vérifier les aspects techniques : - Conformité des livraisons (versions…) - Installation des composants selon la documentation - Bon fonctionnement (crash, bugs à l’exécution…) - Erreurs techniques : paramétrage, fichier manquant Les tests fonctionnels applicatifs : Ces tests sont à la fois techniques et fonctionnels. Bien souvent, les équipes sautent cette étape pour passer directement aux tests fonctionnels métier et effectuer les deux types de tests en même temps. Ces tests doivent vérifier les cas non passant (générant des messages d’erreurs), les cas aux limites (des cas mettant en jeu des données se situant aux limites des règles métiers) et les cas de non régression au niveau applicatif. Les tests fonctionnels métier : Ces tests ont pour but de jouer des scénarios type utilisateur. Ce sont des scénarios « bout en bout » qui sont mis en place et joués par les testeurs. Le but étant de vérifier la qualité du produit. Ces tests doivent être réalisés dans des conditions « réelles » pour simuler les actions utilisateurs qui seront effectuées en production. Ces tests sont accomplis par la MOA, qui a une connaissance métier indispensable à cette phase. Les tests de non régression : Ces tests sont essentiels dans toutes les phases de recette. Comme indiqué par leurs noms, ces tests permettent de vérifier que l’application en question n’a pas régressé. Si une application subi une évolution, il est possible que celle-ci impacte des fonctionnalités déjà présentes. Il est impératif de s’assurer que les anciens modules sont toujours fonctionnels. L’unique solution permettant de détecter la régression est de réaliser l’ensemble des cas de tests à chaque livraison. Cette procédure s’avère très fastidieuse si une automatisation n’est pas mise en place.
Worldline [Euronext : WLN] est le leader européen et un acteur mondial de référence dans le secteur des paiements et des services transactionnels. Worldline met en place des services nouvelle génération, permettant à ses clients d’offrir au consommateur final des solutions innovantes et fluides. Acteur clef du B2B2C, riche de plus de 40 ans d’expérience, Worldline sert et contribue au succès de toutes les entreprises et administrations, dans un marché en perpétuelle évolution. Worldline propose un Business Model unique et flexible, construit autour d’un portefeuille d’offres évolutif et global permettant une prise en charge end-to-end. Les activités de Worldline sont organisées autour de trois axes : Merchant Services & Terminals, Mobility & e-Transactional Services, Financial Processing & Software Licensing. Worldline emploie plus de 7 300 collaborateurs dans le monde entier et a généré un revenu de 1,22 milliard d’euros en 2015. Worldline est une entreprise du Groupe Atos. worldline.com
La recette (ou test d'acceptation) est une phase de développement des projets, visant à assurer formellement que le produit est conforme aux spécifications. Il ne s’agit plus de tester une fonctionnalité précise comme c’est le cas avec les tests fonctionnels, mais bien de tester l’application dans sa globalité. Pour cela, des scenarii de tests sont la plupart du temps utilisés afin de refléter une utilisation réelle de l’application. Ces tests peuvent être réalisés par le chef de projet fonctionnel ou par le client.
On trouve ensuite le bouton pour lancer la recherche sur Google puis on génère le clic avec la méthode .click(). La page Google va ainsi effectuer la recherche sur le mot clé 'campus booster'. On va cliquer sur le premier résultat à partir de l'ID du lien pour se rendre sur l'interface Campus Booster, puis de la même manière, on va entrer notre ID puis notre mot de passe afin de se connecter à Campus Booster. On a donc pu géré avec Selenium la connexion/l'envoi de formulaire.

I’m not a programmer by trade. Just a short while back, I knew nothing about it. But with a few VBA beginner courses, help from quick-answer sites like stackoverflow.com, and a willingness to learn, anyone can code. Now VBA is a fun hobby and I’ve helped lots of people automate daily tasks and turn small projects into big ones with bots over the past 6 years.
Lors de la création d’un test, l’outil dispose généralement d’un pointeur d’objets qui met en avant l’objet situé sous le pointeur de la souris. La reconnaissance de cet objet passe par la comparaison de ses propriétés à celles des objets ou types d’objets présents dans le référentiel. Si la correspondance entre l’objet pointé et celui du référentiel est forte, il est alors possible de définir avec une grande probabilité que l’objet pointé est du même type que celui du référentiel.
Chaque action a un bouton vert et rouge que vous pouvez utiliser pour la connecter à d’autres actions. Le bouton vert représente le chemin à suivre si l’action est réussie et le bouton rouge représente le chemin à suivre si l’action échoue. Rendre votre robot Zennoposter à l’épreuve des pannes est possible lorsque vous utilisez pleinement cette fonctionnalité.
Les essais logiciels sont de plus en plus longs et complexes, les délais de plus en plus courts et les impacts d’une anomalie critiques. Les technologies de l’information sont partout, la qualité doit y être aussi. Cette présentation traite des bonnes pratiques à implémenter afin de réduire et d’éliminer ces enjeux présents dans vos processus d’entreprise. Vous en saurez plus sur l’importance d’automatiser, les défis du passage du manuel à l’automatisation et pourquoi les outils actuels n’offrent pas le ROI escompté. Une nouvelle démarche pour simplifier l’adoption et assurer le ROI est aussi présentée.
Research by Carl Benedikt Frey and Michael Osborne of the Oxford Martin School argued that employees engaged in "tasks following well-defined procedures that can easily be performed by sophisticated algorithms" are at risk of displacement, and 47 per cent of jobs in the US were at risk. The study, released as a working paper in 2013 and published in 2017, predicted that automation would put low-paid physical occupations most at risk, by surveying a group of colleagues on their opinions.[91] However, according to a study published in McKinsey Quarterly[92] in 2015 the impact of computerization in most cases is not replacement of employees but automation of portions of the tasks they perform.[93] The methodology of the McKinsey study has been heavily criticized for being intransparent and relying on subjective assessments.[94] The methodology of Frey and Osborne has been subjected to criticism, as lacking evidence, historical awareness, or credible methodology.[95][96] In addition the OCED, found that across the 21 OECD countries, 9% of jobs are automatable.[97]

Définit l'accès au niveau du système pour ajouter et modifier toutes les valeurs par défaut et fonctions de l'automatisation du support dans l'onglet Administration. L'administrateur système configure les clients hébergés et les analystes, modifie les propriétés système de l'automatisation du support et effectue les réinitialisations de mot de passe système.
Zennoposter s’intègre avec tous les scripts ou langages de programmation Windows, il n’est donc pas nécessaire d’apprendre un nouveau langage pour travailler avec. Néanmoins, même si l’outil est ergonomique et fonctionne avec des briques en drag and drop pour élaborer vos templates, une formation Zennopostervous sera utile si vous voulez jusqu’aux limites du logiciel.
Dans le chapitre « Évolution des techniques de fabrication »  : […] Depuis la Seconde Guerre mondiale, une forte évolution a conduit à la mécanisation des cimenteries et, même, à l'automatisation des plus modernes. Dans ces dernières, toutes les manœuvres, les réglages des fours, des broyeurs et de tous les organes tendent à être faits mécaniquement et commandés automatiquement par des dispositifs électroniques. […] Lire la suite☛ http://www.universalis.fr/encyclopedie/ciment/#i_2513
techniques, d'abord manuelles et discontinues, sont devenues plus tard semi-continues (ou séquentielles) et automatiques, puis, de plus en plus, continues et automatiques ; les méthodes automatiques, dont les résultats peuvent être enregistrés continûment, ont alors permis le réglage, puis l'automatisation des procédés qu'elles sont destinées […] Lire la suite☛ http://www.universalis.fr/encyclopedie/analyse-des-gaz/#i_2513
Un inventeur indépendant, George C. De Vol, développe et brevette aux États-Unis, en 1954, un système d'enregistrement magnétique capable de commander les opérations d'une machine. Pour le vendre, il crée, avec l'ingénieur Joseph F. Engelberger, la première entreprise de robotique, Unimation Inc. Le premier « Unimate » est vendu en 1961 à General […] Lire la suite☛ http://www.universalis.fr/encyclopedie/brevet-du-premier-robot-industriel/#i_2513
TestComplete est un outil d’automatisation des tests fonctionnels édité par AutomatedQA, une entreprise basée à Beverly aux États-Unis (Massachusetts). Le référentiel d’objets de cet outil possède plusieurs fonctionnalités intéressantes comme la création de « Modèle » de reconnaissance ainsi que le paramétrage des propriétés de reconnaissance des objets.
24. HITEMA – Groupama Gan Vie L’automatisation des tests fonctionnels SIMON Emeline 23 Bibliographie / Webographie https://fr.wikipedia.org/wiki/Test_unitaire https://fr.wikipedia.org/wiki/Extreme_programming#Tests_de_recette_.28ou_tests_fonctionnels.29 http://blog.octo.com/demarches-de-tests-fonctionnels/ http://fr.slideshare.net/gmantel/automatisation-des-tests-le-mythe-du-roi https://fr.wikipedia.org/wiki/Mantis_Bug_Tracker http://www.e-systemes.com/live-blog/suivi-des-bugs-et-des-projets-quelle-application-pour-e- systemes/434/ http://atatorus.developpez.com/tutoriels/java/test-application-web-avec-selenium/#LI http://www.osaxis.fr/blog/automatiser-ses-tests-fonctionnels-partie-2-2/ http://www.zdnet.fr/actualites/6-conseils-pour-les-tests-d-applications-mobiles-39806167.htm http://www.all4test.fr/actualites/477-test-mobile-comment-tester-les-applications-mobiles https://fr.wikipedia.org/wiki/CAPTCHA http://www.nextinpact.com/news/91233-recaptcha-google-veut-prouver-que-vous-netes-pas-robot- avec-case-a-cocher.htm http://www.conseilorga.com/publications/recettes-tests-et-qualifications Livre : Industrialiser le test fonctionnel - 2e édition: Pour maîtriser les risques métier et accroître l'efficacité du test - Bruno Legeard, Fabrice Bouquet, Natacha Pickaert

Fondative s’intéresse en particulier à automatiser les tests pour ses applications Symfony. Ce framework présente déjà 2 classes natives permettant l’automatisation : il s’agit de sfBrowser et sfTestFunctional. Les fonctions basiques de ces classes ne répondent pas directement aux exigences des tests d’acceptation. Exemple : pour un scénario de renseignement des champs d’un formulaire, il n’existe pas de méthode toute prête permettant l’exécution de ce test ; le développeur est amené à écrire la fonction correspondante. Par contre avec Codeception, il existe une fonction « fillField » où il suffit de passer les noms des champs et les valeurs en paramètres pour que le test soit exécuté. Cette limite fait de Codeception la solution la plus adéquate à l’automatisation d’une application Symfony, il fournit des classes couvrant mieux les besoins des deux niveaux de test (fonctionnels et acceptation).
×