GTAC 2013: Présentations (1er jour)

Discours d'ouverture

Tony Voellm (Google)

Discours d'ouverture : Évolution du contrôle qualité vers l'ingénierie de test

Ari Shamash (Google)

Vous avez créé une application. Vous l'avez lancée. Vous avez compris que vous pourriez vous lancer, augmenter le volume, investir Mais les demandes de nouvelles fonctionnalités sont très nombreuses. Vous êtes maintenant invité à repousser vos limites à une vitesse sans précédent. Eh oui ! Et après ?

Vous ne pouvez pas le jeter, et repartir de zéro. Il vous suffit de le faire évoluer tout en continuant d'ajouter des fonctionnalités de haute qualité à une vitesse époustouflante. De plus, vous devez vous assurer que tout ce qui s'y trouve déjà fonctionne correctement. Comment procéder ? Heureusement, un nouveau domaine se forme dans le secteur de l'ingénierie logicielle pour répondre à ce scénario courant: chez Google, nous appelons ce domaine "l'ingénierie de test".

Cette discussion se concentrera sur ce qu'est l'ingénierie de test, son évolution par rapport au contrôle qualité et la façon dont le secteur dans son ensemble a mis en œuvre l'ingénierie de test (avec des exemples spécifiques de la mise en œuvre chez Google).

Tester des systèmes à grande échelle @Twitter

James Waldrop (Twitter)

James va vous parler des outils, des processus et de la philosophie qui permettent de tester les performances sur Twitter. Une attention particulière sera accordée à la bibliothèque de tests de charge Open Source Iago, qu'il a rédigée pour permettre aux équipes d'ingénieurs de Twitter d'effectuer des tests de charge avant de déployer du code en production. Nous aborderons les détails de mise en œuvre de certains de ces tests (y compris le code source) et la gestion des facteurs de complication tels que OAuth et les protocoles arbitraires Thrift.

Comment tester un système d'exploitation pour mobile ?

David Burns (Mozilla) et Malini Das (Mozilla)

C'est ce problème qui a été perçu par Mozilla lorsque nous avons décidé de nous aventurer dans l'univers de FirefoxOS. Par où commencer et comment y parvenir, cela s'est avéré être une tâche intéressante. Découvrez comment nous avons résolu ce problème et comment nous avons créé un nouveau framework.

Pipeline de livraison continue pour l'automatisation mobile

Igor Dorovskikh (Expedia) et Kaustubh Gawande (Expedia)

Expedia a commencé à investir dans le Web pour mobile et les applications iOS/Android début 2012. Parallèlement, les ingénieurs de test ont commencé à développer des solutions d'automatisation des tests pour intégrer dès le départ la qualité et la testabilité des produits. Au cours de cette conférence, nous partagerons notre expérience et notre expérience concernant l'utilisation d'outils Open Source pour créer des tests automatisés dans l'environnement de développement et de livraison continue Agile d'Expedia. Nous allons parler de la pyramide test et présenter plus en détail les outils Open Source spécifiques qui ont fait leurs preuves. Nous utilisons des outils Open Source tels que Cucumber, l'outil d'automatisation Web Selenium-WebDriver, l'outil d'automatisation iOS Frank, les outils d'automatisation Android Robotium and Calabash et le système d'intégration continue Jenkins. Nous allons également vous présenter certains des principes Agile Delivery que nous nous efforçons d'adopter, tels que TDD, Pair Programming, Build et Test Radiators. Enfin, nous parlerons de certains des avantages que nous avons retirés de notre investissement dans l'agilité et l'automatisation des tests, ainsi que de la façon dont nous atteignons nos objectifs de livraison continue.

Test automatisé des boîtiers décodeurs avec GStreamer et OpenCV

David Röthlisberger (YouView)

Nous créerons un système de reconnaissance d'images de capture vidéo en trois minutes à l'aide des outils de ligne de commande de GStreamer et d'OpenCV. (GStreamer est un framework de gestion multimédia Open Source, OpenCV ("Open Computer Vision") est une bibliothèque de traitement d'images Open Source.

http://stb-tester.com, l'outil Open Source développé par YouView, destiné à automatiser le test de nos boîtiers décodeurs est l'exemple parfait d'un tel système. Nous allons vous décrire les testeurs stb, la flexibilité offerte par ses fondements GStreamer, certaines des possibilités qu'il offre et les défis à venir.

Pilote Web pour Chrome

Ken Kania (Google)

Depuis sa création sous la forme d'un navigateur Windows uniquement, Chrome a été étendu à Mac, Linux, Chrome OS et, plus récemment, à Android et iOS. Les tests utilisateur des applications Web sur ces plates-formes ont été difficiles et ont nécessité différentes approches d'automatisation. Ce cours décrit le travail réalisé par l'équipe Chrome pour rendre WebDriver disponible pour Chrome sur toutes les plates-formes. Vous y trouverez une présentation technique de l'approche sous-jacente, mais vous verrez comment les développeurs peuvent utiliser le nouveau pilote Chrome pour rédiger des tests pour les différentes plates-formes de Chrome. Nous aborderons également l'état actuel du projet et une feuille de route pour son avenir.

Karma – Test Runner pour JavaScript

Vojta Jina (Google)

Présentation de Karma, l'exécuteur de tests qui rend le test d'applications JavaScript dans des navigateurs réels fluide et agréable.

Le test n'est pas facultatif lorsqu'il s'agit de créer une application JavaScript qui doit fonctionner dans de nombreux navigateurs et appareils. Toutefois, il est difficile d'exécuter des tests dans tous ces environnements. Karma transforme cette tâche méchante en un gâteau. Elle vous permet d'exécuter des tests JavaScript dans des navigateurs ou des appareils réels, tels que votre téléphone ou votre tablette, directement depuis votre terminal ou votre IDE préféré.

Mesures automatisées de la qualité des vidéos

Patrik Höglund (Google)

Oui, il est possible de tester automatiquement des mesures complexes et subjectives, comme la qualité d'une vidéo. Cette présentation explique comment nous avons conçu un test de bout en bout automatisé et continu d'un appel vidéo WebRTC. Nous allons examiner la chaîne d'outils dans les grandes lignes et identifier les défis que nous avons rencontrés lors de sa création. C'est idéal si vous cherchez des idées pour améliorer vos tests multimédias.

Quand de mauvaises choses se produisent dans de bonnes applications...

Minal Mishra (Netflix)

L'essor de l'informatique sur mobile et sur tablette a inondé l'industrie logicielle avec des plates-formes de développement d'applications. Le développement d'applications grand public sur les plates-formes informatiques offre une expérience magique aux utilisateurs finaux. Les éditeurs de logiciels face aux consommateurs tentent toujours de donner le meilleur d'eux-mêmes lorsqu'ils développent une application pour ces plates-formes. Toutefois, le plus grand défi ne se pose qu'une fois que les entreprises ont déployé la première version de l'application. Les consommateurs et les éditeurs de logiciels souhaitent que les fonctionnalités les plus récentes soient développées dès que possible, avec la meilleure qualité possible. Cela entraîne une perte constante de code dans chaque couche de la pile. En tant qu'ingénieurs en automatisation de l'UI, nous créons différents systèmes de détection pour détecter les problèmes d'application le plus tôt possible. Au cours de cette présentation, je vais vous présenter quelques-uns de nos défis et de nos réussites. Ils nous ont permis d'identifier des problèmes en dehors de la couche d'application, mais qui ont eu un impact négatif sur l'expérience utilisateur.

Tests pour les jeux éducatifs et de jeux éducatifs pour les tests

Tao Xie (Université d'État de Caroline du Nord)

Cette conférence présente Pex4Fun (http://www.pexforfun.com/), qui s'appuie sur la génération automatique de tests pour soutenir la notation automatique dans un système de programmation en ligne qui peut s'adapter à des centaines de milliers d'utilisateurs. Les jeux vidéo offrent une expérience de programmation axée sur la programmation en dehors de la classe, permettant aux utilisateurs d'acquérir diverses compétences en programmation et en ingénierie logicielle, y compris des compétences telles que l'écriture de tests unitaires paramétrés. Pex4Fun contribue de façon significative au problème connu de notation des devoirs et propose une expérience d'apprentissage ludique basée sur les jeux interactifs. Pex4Fun gagne en popularité dans la communauté: depuis son lancement public en juin 2010, le nombre de clics sur le bouton "Ask Pex!" (indiquant les tentatives effectuées par les utilisateurs pour résoudre des jeux dans Pex4Fun) a atteint plus d'un million au début de l'année 2013.

Discours d'ouverture : comment Facebook teste Facebook sur Android

Simon Stewart (Facebook)

Facebook est l'une des applications Android les plus populaires. Lors de cette présentation, vous découvrirez comment Facebook garantit la qualité de chaque version. Nous couvrons tous les sujets, de la gestion de code à nos approches en matière de tests, en passant par la version dogfood.