It was a preoccupation of the Greeks and Arabs (in the period between about 300 BC and about 1200 AD) to keep accurate track of time. In Ptolemaic Egypt, about 270 BC, Ctesibius described a float regulator for a water clock, a device not unlike the ball and cock in a modern flush toilet. This was the earliest feedback controlled mechanism.[11] The appearance of the mechanical clock in the 14th century made the water clock and its feedback control system obsolete.
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
Parmi les frameworks les plus appréciés, on trouve les frameworks « pilotés par les données », où les données de test sont stockées indépendamment de l’outil d’automatisation. L’utilisation et la personnalisation des rapports sont ainsi simplifiées, de même que la maintenabilité des données, et de multiples cas de test peuvent être réalisés sur plusieurs jeux de données en entrée. Toutefois, les coûts initiaux ainsi que ceux de la maintenance peuvent être considérables.
Les utilisateurs avancés peuvent même ajouter du code ECMAScript (similaire à Javascript) aux actions pour personnaliser encore plus le déroulement de l'exécution d'un script. Ceux qui veulent aller encore plus loin peuvent même développer des scripts complètement en ECMAScript et les exécuter en utilisant le programme en ligne de commande ActExec.

The introduction of prime movers, or self-driven machines advanced grain mills, furnaces, boilers, and the steam engine created a new requirement for automatic control systems including temperature regulators (invented in 1624 (see Cornelius Drebbel)), pressure regulators (1681), float regulators (1700) and speed control devices. Another control mechanism was used to tent the sails of windmills. It was patented by Edmund Lee in 1745.[16] Also in 1745, Jacques de Vaucanson invented the first automated loom. The design of feedback control systems up through the Industrial Revolution was by trial-and-error, together with a great deal of engineering intuition. Thus, it was more of an art than a science. In the mid-19th century mathematics was first used to analyze the stability of feedback control systems. Since mathematics is the formal language of automatic control theory, we could call the period before this time the prehistory of 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.
This is the opening statement in our action-packed For...Next loop, where the procedure seeks out each aEle (link) object that’s found in the collection of all objects on the page that have a class of result__a (again I used Firebug to locate this particular class name to target). For each match found, we temporarily assign it to the aEle variable and do the following with it…
The centrifugal governor, which was invented by Christian Huygens in the seventeenth century, was used to adjust the gap between millstones.[20][21][22] Another centrifugal governor was used by a Mr. Bunce of England in 1784 as part of a model steam crane.[23][24] The centrifugal governor was adopted by James Watt for use on a steam engine in 1788 after Watt’s partner Boulton saw one at a flour mill Boulton & Watt were building.[16]
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.
La définition des tests automatisés pour les applications de bureau (comme les applications sur les systèmes d’exploitation de Windows) est assez compliqué vu que un petit changement peut provoquer des bugs et des anomalies. Les outils suivants permettent de créer et d’exécuter les tests de l’Interface Graphique pour divers plates-formes et systèmes d'exploitation.
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.

Nous avons conçu un framework composite (voir ci-dessous), associant les meilleurs éléments des deux approches –déterminée par mots clés et pilotée par les données. Il assure le stockage des données de test indépendamment de l’outil d’automatisation (en général, dans une feuille Excel), ce qui permet de maintenir et réutiliser les scripts très facilement.


Analysons le script. On crée tout d'abord un nouveau fichier python (par exemple, macro.py) avec l'éditeur de fichiers de notre choix (cela peut être un simple Notepad, un NotePad++, un SublimeText ou encore un IDE propriétaire tel que Visual Studio). Une fois ce fichier crée, on l'édite, et on commence par importer le WebDriver de selenium (from selenium import webdriver). On définit ensuite PhantomJS en tant que WebDriver avec la directive webdriver.PhantomJS(), on définit la taille du navigateur avec set_window_size(x,y).

                                                                                                                                                                                                                                                                                                                                                                                
Les champs obligatoires sont marqués d'un astérisque (*). Les informations de ce formulaire ne seront pas conservées et ne seront utilisées que pour vous répondre. Conformément à la règlementation applicable, vous disposez d’un droit d’accès, de rectification et d’opposition aux informations vous concernant. Pour plus d’informations sur le traitement de vos données, cliquez ici

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.

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.
Dans le chapitre « Un prolongement de la révolution industrielle »  : […] 1950 à la fin des années 1970, la première vague de développement de l'informatique va correspondre à un mouvement d'automatisation des tâches de coordination internes aux organisations. L'informatique prend en charge la gestion comptable, puis celle du personnel, puis est utilisée pour automatiser les décisions les plus « mécaniques » comme les […] Lire la suite☛ http://www.universalis.fr/encyclopedie/internet-economie-d-internet/#i_2513
Zennoposter élimine la répétition fastidieuse de vérifier les mêmes sites tous les jours, de mémoriser les mots de passe et de remplir les formulaires Web. Grâce aux templates que vous élaborez, il peut remplir automatiquement les formulaires Web qui s’étendent sur plusieurs pages. Toutes les informations sont stockées dans des fichiers textes lisibles par l’humain et peuvent être édités facilement.
Nous avons pris soin d'importer le framework unittest de Python afin de disposer de la classe TestCase et du test runner. Nous avons également importé le webdriver fourni par Selenium, qui va nous permettre d'automatiser le navigateur. Les méthodes setUp() et tearDown() d'xUnit sont implémentées pour initialiser notre driver avant de lancer les tests et le fermer une fois terminé.
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.
Lors d’un précédent article sur le blog, l’outil libre Selenium était présenté. Selenium utilise une autre approche en faisant référence aux objets d’une page Web directement dans le script de tests (par l’intermédiaire des propriétés et attributs des balises HTML). Il n’existe pas dans Selenium d’outil donnant accès à la liste des objets présents ni permettant leur paramétrage, c’est à dire de véritable référentiel d’objets exploitable.
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 dans 29 pays et riche de plus de 45 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, Mobility & e-Transactional Services, Financial Services. Worldline emploie plus de 9 400 collaborateurs dans le monde entier et génère un chiffre d’affaires estimé à environ 1,5 milliard d’euros sur une base annuelle. Worldline est une entreprise du Groupe Atos. Dans le cadre de notre croissance, nous offrons des opportunités de stage, apprentissage et CDI. Vous souhaitez intervenir sur des projets d’envergure et innovants dont vous serez potentiellement l’utilisateur final. Les nouvelles technologies vous passionnent, vous êtes curieux et souhaitez contribuer à l’amélioration continue de projets en équipe. Développeurs Java, Scrum Master, Ingénieur Devops …Participer à l’aventure Worldline ! Rejoignez nous. Les 9 400 hommes et femmes de Worldline sont tous différents, mais partagent les mêmes valeurs, comme le montre notre attitude. Nous sommes curieux et humbles ; nous apprenons chaque jour et nous nous efforçons de simplifier les choses et d’entretenir la motivation de chacun. Dans ce secteur à évolution rapide, nous savons nous adapter et nous remettre en question. Nous pensons en termes de qualité et d’efficacité, et faisons preuve d’esprit d’entreprise et d’un sens du service certain. Mais, par-dessus tout, nous ne tournons jamais le dos aux difficultés. Ainsi, l’association de ces valeurs nous garantit de travailler au sein d’une équipe dynamique et innovante, dans laquelle chaque membre peut se développer et progresser.
Opter pour l’automatisation des tests suscite l’espoir, parmi les responsables, de parvenir à réaliser les tests avec très peu de travail manuel, voire aucun. Par conséquent, ils n’affectent pas les ressources nécessaires à l’exécution des étapes manuelles requises pour le test automatisé, notamment l’analyse des résultats des tests ou la création et le nettoyage des machines de test. La plupart des personnes pressenties pour ces opérations sont soit indisponibles, soit ne disposent pas des compétences idoines.

Par défaut, les navigateurs et leurs drivers doivent être disponibles sur la même machine que le serveur WebDriver (on verra plus tard dans cet article qu'il est possible de faire autrement). Mais grâce à l'architecture client-serveur, les machines peuvent être distantes (Remote WebDriver). Ce qui vous permet par exemple de continuer à manipuler votre serveur de développement pendant que des serveurs distants exécutent vos tests. Vous n'avez pas de blocage de votre interface graphique.
Think of variables (like objIE) as floating references or containers that refer to objects or numbers we want to manipulate. But before we get to use them, we have to declare, or Dim, them, which sets aside some memory for whatever kind of use we have in mind for them. To manipulate Internet Explorer as an object in VBA, we need to Dim the browser — either generically as an Object variable (an example of late binding objects), or more specifically as an InternetExplorer special object variable like we did here (an example of early binding objects).
27. HITEMA – Groupama Gan Vie L’automatisation des tests fonctionnels SIMON Emeline 1 Annexe 2 : Exemple de suivi d’avancement format Tableau sur le logiciel TCS WEB, Groupama Gan Vie. Sur cet exemple, le suivi d’avancement est organisé sur un cahier de recette comprenant plusieurs onglets (chacun représentant un thème). On peut ainsi suivre le détail du nombre de cas de tests sur chaque domaine, puis le pourcentage.
Increased automation can often cause workers to feel anxious about losing their jobs as technology renders their skills or experience unnecessary. Early in the Industrial Revolution, when inventions like the steam engine were making some job categories expendable, workers forcefully resisted these changes. Luddites, for instance, were English textile workers who protested the introduction of weaving machines by destroying them.[46] Similar movements have sprung up periodically ever since. For most of the nineteenth and twentieth centuries, the most influential of these movements were led by organized labor, which advocated for the retraining of workers whose jobs were rendered redundant by machines.
Quels points communs relient les techniques ainsi mises en œuvre ? Il est inutile d'insister sur l'existence d'un double langage : celui des techniciens, inaccessible au grand public, et le langage, accessible, mais déformé, de ceux qui veulent créer le sensationnel, par exemple en employant, pour des motifs commerciaux, le terme automatisation ou un terme de la même famille dans la publicité.
I agree to receive these communications from SourceForge.net. I understand that I can withdraw my consent at anytime. Please refer to our Terms of Use and Privacy Policy or Contact Us for more details. I agree to receive these communications from SourceForge.net via the means indicated above. I understand that I can withdraw my consent at anytime. Please refer to our Terms of Use and Privacy Policy or Contact Us for more details.
Il s’agit de l’approche Quality By Design qui vise, dans le développement d’un médicament, à mieux explorer les caractéristiques des molécules, à mieux maîtriser le procédé de fabrication en l’explorant aux limites et en identifiant les paramètres critiques. La finalité est d’assurer que la qualité ne soit plus assurée par l’atteinte d’une valeur cible, mais par un ensemble de valeurs (Design Space), espace de conception dans lequel les paramètres de production peuvent varier sans altérer la qualité du produit final.
Une automatisation est une technique ou un ensemble de techniques ayant pour but de réduire ou de rendre inutile l'intervention d'opérateurs humains dans un processus où cette intervention était coutumière. Il n'y a évidemment pas automatisation lorsque l'opérateur humain est remplacé par la force animale, ni lorsqu'un processus artificiel est substitué à un processus naturel. L'automatisation désigne uniquement une transformation de processus exclusivement créés par l'homme : techniques ou ensemble de techniques. Elle tend donc à économiser l'intervention humaine sous toutes ses formes (apport d'énergie mis à part) :
Cette étape implique, en la présence effective des différents acteurs du projet, maîtrise d’œuvre et maîtrise d'ouvrage, le déroulement rigoureux de procédures de tests préalablement décrits, et l'identification de tout écart fonctionnel ou technique. C’est le client qui valide cette étape. On peut considérer une fonctionnalité vraiment terminée qu’une fois qu’elle a passé avec succès les tests d’acceptation.

Par la suite, la directive .get(URL) nous permet de charger une page Internet à partir de son URL (attention à bien faire attention au HTTP ou HTTPS, selon les cas). Dans notre exemple, on se rend tout simplement sur Google.fr. On cherche ensuite sur cette page un élément à partir de son ID, sa classe ou à partir d'un sélecteur CSS (par exemple, on aura déjà repéré au préalable la balise contenant la donnée par son ID), et on lui envoie du texte. En d'autres termes, on recherche la classe de la barre de texte sur la page Google et on simule une saisie de texte. Ceci est possible grâce à find_element_by_class_name(classe de la balise) auquel on attribue l'action de simuler des touches de frappe avec send_keys(TEXTE).

Une fenêtre modale est très utile lorsque vous voulez que les utilisateurs interagissent avec votre site . De temps en temps, une fenêtre modale est appelée une boîte modale que la fenêtre est utilisée pour afficher la boîte de dialogue . Dans un article précédent, nous vous avions guidés à travers un tutoriel sur la façon de faire des fenêtres modales en utilisant Bootstrap Plugin.Dans ce post,
Dans le chapitre « L'automatisation de l'instrumentation »  : […] de la micro-informatique, de la robotique et de la miniaturisation permettent d'automatiser un grand nombre de procédures d'analyse autrefois longues et laborieuses. L'utilisation de l'appareillage devient plus simple et plus fiable. Par exemple, un spectromètre moderne de paillasse, couplé à un chromatographe, peut ne plus comporter aucun bouton […] Lire la suite☛ http://www.universalis.fr/encyclopedie/chimie-analytique/#i_2513

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.
Le logiciel d'Adobe est mondialement reconnu par les designers de tous âges, mais pas plus que Photoshop. Les panneaux d'édition de PhotoShop sont tout le shebang avec tout ce dont vous avez besoin pour construire des designs personnalisés.Et maintenant, il y a un éditeur d'application web gratuit, appelé LayerStyles, qui imite l'éditeur de calques Photoshop directement dans votre navigateur. Il v
Une automatisation est une technique ou un ensemble de techniques ayant pour but de réduire ou de rendre inutile l'intervention d'opérateurs humains dans un processus où cette intervention était coutumière. Il n'y a évidemment pas automatisation lorsque l'opérateur humain est remplacé par la force animale, ni lorsqu'un processus artificiel est substitué à un processus naturel. L'automatisation désigne uniquement une transformation de processus exclusivement créés par l'homme : techniques ou ensemble de techniques. Elle tend donc à économiser l'intervention humaine sous toutes ses formes (apport d'énergie mis à part) :
La première conséquence est donc évidente. Il y’a beaucoup de bogues à rechercher et à remonter au développeur pendant la phase de recette avant la publication au client. Le développeur devra ensuite analyser et corriger tous les bogues remontés, et les fonctionnalités incriminées devront encore être re-testé afin de s’assurer que les bogues ne sont plus présent.
27. HITEMA – Groupama Gan Vie L’automatisation des tests fonctionnels SIMON Emeline 1 Annexe 2 : Exemple de suivi d’avancement format Tableau sur le logiciel TCS WEB, Groupama Gan Vie. Sur cet exemple, le suivi d’avancement est organisé sur un cahier de recette comprenant plusieurs onglets (chacun représentant un thème). On peut ainsi suivre le détail du nombre de cas de tests sur chaque domaine, puis le pourcentage.
L’application utilisée ici est une simulation de gestion de bibliothèque utilisant le langage C# et les composants graphiques Telerik. Pour chaque présentation de livre, deux boutons sont disponibles : le premier permettant de voir la description détaillée du livre, l’autre permettant un retour à la liste des livres. Ces deux boutons sont du même type mais il peut être intéressant de les faire reconnaître comme deux types différents : un « Bouton Retour » et un « Bouton Description ».

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.

×