© Adastra, 2008 Keyboard Robot Hardwarové pomůcky pro testování aplikací aneb Jednočip – nejlepší přítel testera Kamil Řezáč.

Slides:



Advertisements
Podobné prezentace
Rychlejší ovládání počítače
Advertisements

Na velikosti (ne)záleží aneb Úvod do programování jednočipů
Procvičování – ÚVOD DO INFORMATIKY, KLÁVESNICE
VÝVOJ PROGRAMOVACÍCH JAZYKŮ PERSPEKTIVY ELEKTRONIKY 3. Celostátní seminář, 18. března 2003 Ing. Pavel Pokorný UNIVERZITA TOMÁŠE BATI VE ZLÍNĚ Fakulta technologická.
Jan Syrovátka Jiří Hradský.  Výrobní program orientovaný na výrobu knih pro české i zahraniční nakladatele  Nabízí kompletní výrobu knihy od grafického.
Autor : Ladislav Ullrich.  Automatizované testování Problematika Přínosy  Funkční testování Problematika Princip  Požadavky na ATN  Přehled komerčních.
Programová rozhraní pro grafické adaptéry
Průvodce pro prostorové dotazy v systému PostGIS (plugin pro OpenJUMP) Vedoucí: Ing. Jan Růžička.Ph.D. Konzultant: Ing. Aleš Daněk Diplomová práce.
Student: Ing. Olga Minaříková školitel: doc.akad.soch. Miroslav Zvonek, PhD. srpen 2009.
Prezentace informačního systému pro malé a střední pekárny
SYSTÉM PRO SPRÁVU DISTRIBUCE PRODUKTŮ
Vypracoval: Ladislav Navrátil, EI-4 Umělá inteligence Zaměření Expertní systémy.
MADSEN AccuScreen novorozenecký sluchový screener.
Tvorba webových aplikací
Přednášející: Luboš Langhammer Lanbot. .NET MF v robotice  Výhody platformy  Automatický sklad  Snobot  Robrouk  Lynx  Soutěže.
Sběrnice I. Sběrnice v počítačích. Sběrnice I. Sběrnice v počítačích.
ESTUP – Elektronické STUdentské Práce, Martin Pešava 2006, Brno Systémy pro zpřístupňování VŠKP: zkušenosti, možnosti, nabídky, potřeby... Systém pro eVŠKP.
použitelnost webu (usability)
Softwareová architektura
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
Michael Juřek Software Architect Microsoft s.r.o.
Rozšíření jednouživatelské verze IS na víceuživatelskou Prezentace Diplomové práce Autor : Libor Tomášek Spoluautoři : Pobucký M., Drábek L. Vedoucí :
Co vše nám může tvořit počítačovou sestavu
Řízení a vizualizace záložního diesel-agregátu
Vývoj aplikace pro mobilní sběr dat Zpracovatel: Vladimír Havlík Vedoucí práce: Ing. Jan Stankovič Ph.D.
David Kratochvíl. * Linux – označení pro operační systém (OS) * 1,3 milionu mobilních zařízení s Androidem aktivováno každý den * Většina ze TV.
4. Lekce Dílčí procesy funkčního testování
Principy posuzování kvality software podle ČSN ISO/IEC Praha Ing
Aplikace DVB-T Český Telecom, a.s.. 2 Agenda DVB-T MHP Platforma ČTc DVB-T MHP Platforma ČTc – aplikace Shrnutí cílů společnsti Český Telecom, a.s.
Jazyk PHP Programovací jazyk PHP (Hypertext preprocessor) je skriptovací jazyk, který běží na straně serveru. KLIENT - SERVER Server posílá do vašeho počítače.
Představení nové verze OPSI Kamil Malinka Martin Lebeda PROJEKT financovaný z Operačního programu Vzdělávání pro konkurenceschopnost ZVYŠOVÁNÍ IT GRAMOTNOSTI.
Číslo šablony: III/2 VY_32_INOVACE_P4_1.9 Tematická oblast: Hardware, software a informační sítě Porty a rozhraní Typ: DUM - kombinovaný Předmět: ICT Ročník:
Výukový program Poznávání počítače.
Dokumentace informačního systému
Letsim 1 letecký simulátor Prezentace projektu - 36SI.
Návrh systému evidence komponent měřícího řetězce stanic SampleFx.
Cluster---- Pavel Martinec 4.A1. Z Z 2 O mně O projektu Stanovení dílčích úkolů Vlastní řešení projektu Výběr serverů a nákup serverů Zapojení do clusteru.
Návrh navigačního a komunikačního MFD (zobrazení a ovládání navigačních, komunikačních a identifikačních zařízení na palubě letounu) České vysoké učení.
Pathfinding s využitím PostGIS Prezentuje : Jan Kolář.
Multithread programming Java vs. OpenMP Pavel Zavoral Martin Kugler.
Virtualizace Monika Broukalová Pavel Kolář. Co je to virtualizace? Jako virtualizace se v prostředí PC označují postupy a techniky, které umožňují k dostupným.
Klávesnice nejrozšířenější vstupní zařízení počítače
Světelná technika Automatizace světla.
1 Řízení implementace IS a SS* Šablony. 2 Vzorové postupy.
Geoinformatika Presentace diplomové práce Využití mapového serveru ArcIMS pro dynamické generování statistických map v prostředí WWW Vedoucí práce : Ing.
Alternativní ovládání PC a okolí Nature Inspired Technologies Group (NIT) - Katedra kybernetiky Fakulta elektrotechnická ČVUT.
INTERNETOVÉ ŘEŠENÍ ÚZEMNÍHO PLÁNU MĚSTA NÁMĚŠŤ NAD OSLAVOU Vedoucí práce: doc. RNDr. Vít Voženílek, CSc. Univerzita Palackého v Olomouci Přírodovědecká.
Semestrální projekt Správa webových konferencí Mendelova univerzita Aplikace vývojových technik Jakub Matoušek Květen 2012.
Inovace Modelu Robota Bakalářská práce
Testování s TestComplete
Alternativní ovládání PC a okolí Nature Inspired Technologies Group Dept. of Cybernetics FEE CTU in Prague.
Klient pro správu databází MySQL 1 Klient pro správu databází MySQL Zbyněk Munzar České vysoké učení technické v Praze Fakulta elektrotechnická.
Business Activity Monitoring Jiří Kolář. Pojmy a zkratky ● SOA ● Servis Oriented Architecture ● BPMS ● Business Process Management System ● BAM ● Business.
Návrh konstrukce a řízení manipulátoru s paralelní kinematikou Bc. Jan Goňa Ing. Vít Ondroušek, Ph.D. Mendelova Univerzita v Brně.
Návrh komunikačního protokolu pro řízení vybraných robotických platforem Robert Čížek.
1 Dopravní simulace Lekce 1:Úvod. 2 Představení Ondřej Přibyl, Ph.D. Schůzky: Konzultační hodiny: dohodou.
Webová aplikace pro koordinaci výrobních procesů Kryštof Német , Brno Autor: Kryštof Német Vedoucí práce: RNDr. Zuzana Priščáková, PhD.
Web services – když si Java sedne s M$ na kus řeči Ing. Petr Přibyl CCA Group a.s.
Návrh uživatelského rozhraní. Volba akcí uživatele – Systém menu Formát ukládání a modifikace dat – Vstupní formuláře Způsob formulování dotazů – SQL,
Testování aplikací v Javě Petr Adámek IBA CZ, s.r.o. © 2010.
SOFTWAROVÁ PODPORA PRO VYTVÁŘENÍ FUZZY MODELŮ Knihovna fuzzy procedur Ing. Petr Želasko, VŠB-TU Ostrava.
Vývoj mobilních her a současné trendy
Programování mikropočítačů Platforma Arduino
VY_32_INOVACE_09_INFORMATIKA_5_KLÁVESNICE1 Dětský domov, Základní škola praktická, Praktická škola, Školní jídelna a Školní družina, Duchcov, Školní 1,
.NET Micro framework 2012 PRaha
Výukový materiál zpracován v rámci projektu
Efektivní programování V CAM software
PT – E550WVP Základní specifikace:
Klávesnice Denisa Procházková 1.A.
Dosahování aplikací v prostředí energetických společností
Transkript prezentace:

© Adastra, 2008 Keyboard Robot Hardwarové pomůcky pro testování aplikací aneb Jednočip – nejlepší přítel testera Kamil Řezáč

Byl jednou jeden zákazník…  původní pobočkový systém ve FoxPro ̶ funkčně vzásadě vyhovuje ̶ výhledově prakticky neudržovatelný (produkt 12-leté one-man-show)  rozhodnutí implementovat nový systém ̶ na pobočce Java (Swing) a PostgreSQL ̶ na centrále jBoss a Oracle  ovšem některá akceptační kritéria jsou poněkud „svérázná“ ̶ kompletní ovladatelnost z klávesnice ̶ ztracený „focus“ ̶ co není uvedeno v analýze, chová se jako v původním programu ̶ řada výjimek, o kterých už skoro nikdo netušil, že existují ̶ nová aplikace bude stejně rychlá jako původní ̶ jak změřit

Porovnání rychlosti staré a nové aplikace  zdánlivě jednoduché… ̶ definujeme reprezentativní sadu operaci s programem ̶ změříme čas jejího provedení na obou systémech  …ale realizace problematická ̶ testeři zákazníka jsou zvyklí na původní aplikaci ̶ naši testeři mají naopak vyšší výkonnost v aplikaci nové  podmínky „objektivního testu“ ̶ nezávislý na platformě ̶ nečeká se na odezvu GUI (zadávání „do bufferu“) ̶ eliminace překlepů při psaní „naslepo“, reprodukovatelnost na scénu nastupuje KeyBoard Robot (YAKE)

YAKE (Yet Another Keyboard Emulator :-)  prototyp - jednočip AVR Mega8 na univerzální desce  emulace protokolu USB a PS/2 klávesnice (ne naráz)  klávesová sekvence zakompilovaná ve firmware  volitelná rychlost generování stisků kláves  generování posloupnosti kláves z „metajazyka“ pomocí PHP skriptu  bootloader pro snadné nahrávání nového firmware bez potřeby dalšího HW

Hardware: produkční návrh

Testovací cyklus Vygenerování kódu Kompilace a nahrání firmware Použití sekvence pro test Sestavení klávesové sekvence

Konfigurace sekvence kláves přes metajazyk 1,1,ENTER,ENTER,2,ENTER,ENTER,4,ENTER,ENTER, 5,ENTER,ENTER,ENTER,ENTER,2,0,ENTER,ENTER, 1,1,ENTER,ENTER,2,ENTER,ENTER,4,ENTER,ENTER, 5,ENTER,ENTER,ENTER,ENTER,2,0,ENTER,ENTER, 1,1,ENTER,ENTER,2,ENTER,ENTER,4,ENTER,ENTER, 5,ENTER,ENTER,ENTER,ENTER,2,0,ENTER,ENTER, 1,1,ENTER,ENTER,2,ENTER,ENTER,4,ENTER,ENTER, 5,ENTER,ENTER,ENTER,ENTER,2,0,ENTER,ENTER static const uchar keySequence[75] = { 30,30,40,40,31,40,40,33,40,40,34,40,40,40,40,31,39,40,40,30, 30,40,40,31,40,40,33,40,40,34,40,40,40,40,31,39,40,40,30,30, 40,40,31,40,40,33,40,40,34,40,40,40,40,31,39,40,40,30,30,40, 40,31,40,40,33,40,40,34,40,40,40,40,31,39,40 }; PHP skript

Chcete si postavit vlastní?  projekt je open-source, informace jsou k dispozici na:

Další možnosti využití  testování schopnosti aplikace udržet „focus“  přihlášení do systému (automaticky nebo na jeden stisk)  hw watchdog (resetátor)  zabránění aktivace screensaveru  rozšíření o simulaci protokolu myši  učení z klávesnice  více sekvencí  displej  …

Prostor pro publikum  Otázky?  Připomínky?  Komentáře

Konec první části  Děkuji za pozornost  Pokračujeme technickou částí – Úvod do programování jednočipů