GTAC 2013: Presentazioni Giorno 1

Commenti

Tony Voellm (Google)

Discorso di apertura - Evoluzione dal controllo qualità ai test di ingegneria

Ari Shamash (Google)

Hai creato un'app e l'hai lanciata. Hai pensato di farcela, aumentare il volume, ottenere finanziamenti, gettare tutto via e poi ricominciare da zero per "fare tutto bene". Ma le richieste di nuove funzionalità sono davvero impeccabili, e ora ti viene chiesto di spingerti verso una scala senza precedenti a una velocità senza precedenti. Accidenti! e ti stai chiedendo cosa fare adesso?

Non puoi gettarlo via e ricominciare da zero, dovrai solo migliorare il tuo sistema mentre continui ad aggiungere funzionalità di alta qualità a una velocità mozzafiato. Devi inoltre assicurarti che ciò che è già presente non duri interruzioni. In che modo? Fortunatamente, nel settore dell'ingegneria informatica nasce un nuovo campo che si occupa di questo scenario comune: in Google chiamiamo "test engineering".

Questa presentazione si concentrerà su cosa sia il test engineering, su come si sia evoluta dal controllo qualità e su come il settore nel suo complesso ha implementato test engineering (con esempi specifici di come è implementato in Google).

Sistemi di test su larga scala @Twitter

James Waldrop (Twitter)

James discuterà degli strumenti, del processo e della filosofia che caratterizza il test delle prestazioni di Twitter. Verrà data particolare importanza alla libreria di test del carico open source Iago, che ha scritto per consentire ai team tecnici di Twitter di eseguire test di carico prima di eseguire il deployment del codice in produzione. La presentazione tratterà i dettagli dell'implementazione di alcuni di questi test (incluso il codice sorgente) e in che modo vengono gestiti fattori complicanti come OAuth e i protocolli arbitrari dell'usato.

Come si fa a testare un sistema operativo per dispositivi mobili?

David Burns (Mozilla) e Malini Das (Mozilla)

Questo è il problema che ha dovuto affrontare Mozilla quando abbiamo deciso di avventurarci nel mondo di FirefoxOS. Da dove iniziare e come farlo si è rivelata un'attività interessante. Scopri come abbiamo risolto questo problema e come abbiamo creato un nuovo framework.

Automazione mobile nella pipeline di distribuzione continua

Igor Dorovskikh (Expedia) e Kaustubh Gawande (Expedia)

Expedia ha iniziato a investire in Web mobile e app per iOS/Android all'inizio del 2012. Allo stesso tempo, i primi ingegneri hanno iniziato a sviluppare soluzioni di automazione per testare la creazione di qualità e verificabilità nei prodotti fin dall'inizio. In questa discussione, condivideremo la nostra esperienza e l'apprendimento dell'utilizzo di strumenti open source per creare test automatici nello sviluppo agile e nell'ambiente di distribuzione continua di Expedia. Discuteremo di Test Pyramid e approfondiremo gli strumenti open source specifici che hanno funzionato bene per noi. Alcuni degli strumenti open source che utilizziamo sono strumenti BDD come Cucumber, lo strumento di automazione web Selenium-WebDriver, lo strumento di automazione iOS Frank, gli strumenti di automazione Android Robotium e Calabash e il sistema di integrazione continua Jenkins. Inoltre, condivideremo alcuni dei principi di Agile Delivery che ci impegniamo ad adottare come TDD, Pair Programming, Build and Test Radiatori. Infine, condivideremo alcuni dei vantaggi che abbiamo ottenuto dal nostro investimento in Agile e l'automazione dei test e il modo in cui ci consegue ai nostri obiettivi di distribuzione continua.

Test decoder automatizzato con GStreamer e OpenCV

David Röthlisberger (YouView)

Creeremo un sistema di riconoscimento delle immagini video in 3 minuti, utilizzando gli strumenti a riga di comando di GStreamer e OpenCV. GStreamer è un framework open source per la gestione dei contenuti multimediali; OpenCV, ovvero "Open Computer Vision", è una libreria di elaborazione di immagini open source.

Un esempio avanzato di tale sistema è http://stb-tester.com, uno strumento open source sviluppato all'indirizzo YouView per automatizzare il test dell'UI dei nostri decoder. Descriviamo stb-tester, la flessibilità offerta dalle opzioni sottostanti GStreamer, alcune delle possibilità che presenta e le sfide che attendono.

Webdriver per Chrome

Ken Kania (Google)

Fin dall'inizio è un browser Windows, Chrome si è esteso a Mac, Linux, ChromeOS e, più recentemente, ad Android e iOS. I test a livello di utente di applicazioni web su queste piattaforme sono stati difficili e richiedevano vari approcci di automazione. In questa presentazione viene descritto il lavoro svolto dal team di Chrome per rendere WebDriver disponibile per Chrome su tutte le piattaforme. Verrà incluso un esame tecnico dell'approccio sottostante, ma ci concentreremo sul modo in cui gli sviluppatori potranno utilizzare il nuovo ChromeDriver per scrivere test sulle varie piattaforme di Chrome. Anche lo stato attuale del progetto e una roadmap per il futuro verranno trattati.

Karma - Test Runner per JavaScript

Vojta Jina (Google)

Introduzione a Karma, un test runner che rende semplice la verifica delle applicazioni JavaScript nei browser reali.

Il test non è facoltativo quando si crea un'applicazione JavaScript che deve funzionare su più browser e dispositivi. Tuttavia, è difficile eseguire test in tutti questi ambienti. Karma trasforma questa attività in genere in una torta. Ti permette di eseguire test JavaScript in browser o dispositivi reali, come il tuo telefono o tablet, direttamente dal tuo terminale o dal tuo IDE preferito.

Misurazioni automatiche della qualità video

Patrik Höglund (Google)

Sì, è possibile testare automaticamente misurazioni complesse e soggettive come la qualità video. Questo intervento mostrerà come abbiamo creato un test end-to-end continuo e automatizzato di una videochiamata WebRTC. Esamineremo in generale la catena degli strumenti e le sfide che abbiamo incontrato durante la creazione. Si tratta dell'opzione ideale se vuoi trarre ispirazione su come far fare un salto di qualità ai tuoi test multimediali.

Quando succede qualcosa di male durante un'applicazione...

Minhra Mishra (Netflix)

Il boom del mobile e del tablet computing ha inondato il settore del software con le piattaforme di sviluppo delle applicazioni. Lo sviluppo di applicazioni per i consumatori su piattaforme informatiche offre alla clientela un'esperienza magica. Le aziende di software rivolti ai consumatori cercano sempre di dare il meglio quando sviluppano un'applicazione per queste piattaforme. Tuttavia, la maggiore sfida nello sviluppo di applicazioni inizia solo dopo che le aziende hanno implementato la prima versione dell'applicazione. I consumatori e le società di software vogliono sviluppare il più presto possibile le caratteristiche e le funzionalità più recenti con la massima qualità. Questo porta al tasso di abbandono costante del codice in ogni livello dello stack. Noi ingegneri dell'automazione dell'interfaccia utente creiamo una varietà di sistemi di rilevamento per rilevare i problemi delle applicazioni prima e dopo. In questa conversazione, condividerò alcune delle nostre sfide e dei nostri successi dietro uno di questi sistemi di rilevamento, che ha contribuito a individuare problemi al di fuori del livello delle applicazioni, ma ha comunque influito negativamente sull'esperienza utente.

Test per i giochi educativi e per i giochi educativi

Tao Xie (Università dello stato della Carolina del Nord)

Questo intervento presenta Pex4Fun (http://www.pexforfun.com/), che sfrutta la generazione di test automatici per supportare la valutazione automatica in un sistema di programmazione online in grado di scalare fino a centinaia di migliaia di utenti. Offre un'esperienza di gioco orientata alla programmazione fuori dall'aula, che insegna agli utenti l'apprendimento di varie competenze di programmazione e progettazione del software, comprese capacità di test come la scrittura di test di unità con parametri. Pex4Fun contribuisce in modo significativo al problema noto della valutazione dei compiti e fornisce un'esperienza di apprendimento divertente basata sui giochi interattivi. Pex4Fun ha ottenuto un'elevata popolarità nella community: da quando è stato reso disponibile al pubblico a giugno del 2010, il numero di clic sul pulsante "Chiedi a Pex!" (che indica i tentativi fatti dagli utenti di risolvere i giochi in Pex4Fun) ha raggiunto oltre un milione all'inizio del 2013.

Discorso di chiusura - In che modo Facebook verifica Facebook su Android

Simon Stewart (Facebook)

Facebook è una delle app per Android più popolari. In questa presentazione scoprirai che cosa fa Facebook per garantire che ogni release sia ottimale. Parleremo di tutto, da come gestiamo il codice, fino ai nostri approcci ai test e fino alla fase sperimentale.