Discrete manufacturing plants adopted these technologies fast. The more conservative process industries with their longer plant life cycles have been slower to adopt and analogue-based measurement and control still dominates. The growing use of Industrial Ethernet on the factory floor is pushing these trends still further, enabling manufacturing plants to be integrated more tightly within the enterprise, via the internet if necessary. Global competition has also increased demand for Reconfigurable Manufacturing Systems.
Le terme « automatisation » sous-entend que ce sont les machines qui font le travail et non les humains. Le volume d’effort manuel requis dans le cadre des tests automatisés est l’un des aspects les moins bien compris du test logiciel. En effet, les individus doivent configurer les machines de test, créer les scripts, sélectionner les tests, analyser les résultats des tests, enregistrer les anomalies et nettoyer les machines de test. Il est important d’estimer précisément ces coûts, non seulement à des fins de budgétisation et de planification, mais également pour calculer précisément le retour sur investissement.
28. L’automatisation des tests fonctionnels SIMON Emeline Annexe 3 : Exemple de suivi d’avancement format courbe sur le lot 6 du logiciel IGC, Groupama Gan Vie. Sur cet exemple, le suivi d’avancement est réalisé à partir de quatre types de résultats : prévisionnel, révisé, exécuté, validé. Ces états permettent de situer le point d’avancement des équipes. Les deux schémas représentent le même suivi mais de façon différente : nombre de cas et pourcentage, et tous deux avec TNR (tests de Non régressions) inclus. L’état Prévisionnel est le nombre de tests prévu au départ, l’état « révisé » est le nombre de cas revu à chaque période (on peut dire Ajusté). L’état « exécuté » est le nombre de cas qui ont été testé, qu’ils soient OK ou KO. Enfin l’état « Validé » est le nombre de cas qui sont OK, donc corrects.
En effet, l’intégration continue dépend principalement  des outils permettant son implémentation; la prestation continue s’appuie  sur les outils dédiés et sur les équipes de développement. Le test continu doit quant à lui mettre en oeuvre  à la fois des outils spécifiques, les équipes de développement, mais également des ressources et services côté client. Construire et intégrer rapidement des changements de code est certainement important. Toutefois, sans processus de livraison automatisé permettant de déterminer comment les changements affectent le risque commercial ou perturbent l’expérience de l’utilisateur final, la fréquence et la rapidité accrues de l’intégration continue et de la livraison continue peuvent devenir un passif plus qu’un actif.
Le quotidien du professionnel du web est rythmé par des tâches inspirantes, et d’autres moins. Certaines actions sont répétitives, le fait qu’un humain les exécute n’a pas de valeur ajoutée, mais c’est ainsi : ces tâches doivent être effectuées. On pense au community manager qui va systématiquement partager des contenus sur Twitter, ou au SEA qui va systématiquement commencer sa journée en vérifiant les coûts de ses publicités. Vous avez l’impression de réaliser des tâches répétitives sur votre navigateur ? Bonne nouvelle : un outil peut sans doute les effectuer à votre place.
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é.

On le répète souvent : l’automatisation des tests de non régression est un enjeu stratégique pour les entreprises. Et dans un contexte où les délais et les coûts de développement des applicatifs sont très serrés, les tests manuels ont de moins en moins de place. D’autant plus qu’un automate est capable de refaire des tests pré-enregistrés et prédéfinis, de comparer les résultats avec les comportements attendus et de signaler le succès ou l’échec des tests. Une fois créés, les tests automatisés peuvent être facilement rejoués. Ils peuvent également être étendus afin d’exécuter des tâches impossibles à effectuer avec un test manuel.
Il s'agit de tester un module indépendamment du reste du programme afin de s'assurer qu'il répond aux spécifications fonctionnelles et qu'il fonctionne correctement en toutes circonstances. Cette vérification est essentielle, en particulier dans les applications critiques. Elle s'accompagne la plupart du temps d'une vérification de la globalité du code, qui consiste à s'assurer de la conformité de l'ensemble ou d’une fraction déterminée des instructions présentes dans le code à tester. L'ensemble des tests unitaires doit être rejoué après une modification du code afin de vérifier qu'il n'y a pas de régressions (l'apparition de nouveaux dysfonctionnements).
L’image ci-dessus vous donne un aperçu du Project Maker de Zennoposter et de sa présentation visuelle. Project Maker est l’utilitaire où vous concevez vos templates que vous pouvez ensuite exécuter à l’aide de l’application Zennoposter. Vous pouvez executer directement vos templates dans Project Maker ce qui vous fera gagner du temps sur des petites action d’automtisation ponctuelles.
Les logiciels de tests fonctionnels cherchent à reproduire le comportement d’un utilisateur lors de l’utilisation d’une application. L’outil doit donc reconnaître les actions et évènements déclenchés sur les différents éléments de l’interface. La reconnaissance des objets est ainsi importante car si l’outil arrive à reconnaître un objet en utilisant ses caractéristiques et non pas par ses coordonnées à l’écran, le test sera de meilleure qualité et pourra être réutilisé même en cas d’une réorganisation des objets à l’écran.
The governor received relatively little scientific attention until James Clerk Maxwell published a paper that established the beginning of a theoretical basis for understanding control theory. Development of the electronic amplifier during the 1920s, which was important for long distance telephony, required a higher signal to noise ratio, which was solved by negative feedback noise cancellation. This and other telephony applications contributed to control theory. In the 1940s and 1950s, German mathematician Irmgard Flugge-Lotz developed the theory of discontinuous automatic controls, which found military applications during the Second World War to fire control systems and aircraft navigation systems.[7]
Likewise, a Feedback Control System is a system which tends to maintain a prescribed relationship of one system variable to another by comparing functions of these variables and using the difference as a means of control.[6] The advanced type of automation that revolutionized manufacturing, aircraft, communications and other industries, is feedback control, which is usually continuous and involves taking measurements using a sensor and making calculated adjustments to keep the measured variable within a set range.[7][8] The theoretical basis of closed loop automation is control theory.
PhantomJS va nous servir de "Web-Driver" et cela sera là son unique utilité. De quoi s'agit-il ? Afin que Python puisse interagir avec le navigateur Web (Chrome, Firefox ou autres), de la même manière que la communication avec une base de données, il nous faut un driver (pilote). C'est là qu'intervient le Web Driver, il permet la communication entre le navigateur Web et notre script Python. De base, Selenium peut utiliser différents drivers pour différents navigateurs (Chrome, Firefox, Opéra) mais ce qui nous intéresse, ce n'est pas d'ouvrir un navigateur mais d'avoir un navigateur headless (sans interface graphique, uniquement en ligne de commandes). C'est là qu'intervient PhantomJS, qui fournit lui-même son Web Driver. L'utilité c'est donc la rapidité d'exécution par rapport aux navigateurs classiques.
×