ESZKÖZTÁMOGATÁS A TESZTELÉSBEN

Hasonló dokumentumok
Kompetens Szoftvertesztelés a Gyakorlatban (CoSTiP) Eszköztámogatás a tesztelésben

ESZKÖZTÁMOGATÁS A TESZTELÉSBEN

MŰSZAKI TESZTTERVEZÉSI TECHNIKÁK STRUKTÚRA ALAPÚ, VAGY FEHÉRDOBOZ TECHNIKÁK TAPASZTALAT ALAPÚ TECHNIKÁK

TESZTMENEDZSMENT TESZTELŐ SZERVEZET TESZTTERVEZÉS ÉS BECSLÉS

A TESZTELÉS ALAPJAI A TESZTELÉS ALAPVETŐ FOLYAMATA A TESZTELÉS PSZICHOLÓGIÁJA A TESZTELÉS ETIKAI KÓDEXE

A TESZTELÉS ALAPJAI MIÉRT SZÜKSÉGES A TESZTELÉS? MI A TESZTELÉS? ÁLTALÁNOS TESZTELÉSI ALAPELVEK

Tesztautomatizálás. Kundra Zoltán

MŰSZAKI TESZTTERVEZÉSI TECHNIKÁK A TESZT FEJLESZTÉSI FOLYAMATA A TESZTTERVEZÉSI TECHNIKÁK KATEGÓRIÁI

OpenCL alapú eszközök verifikációja és validációja a gyakorlatban

Tesztelési szintek Tesztautomatizálás

WebService tesztelés. SOAPui Pro, GreenPepper és Confluence használatával. Verhás & Verhás Szoftver Manufaktúra KNOW-HOW

Verifikáció és validáció Általános bevezető

Iman 3.0 szoftverdokumentáció

30 MB INFORMATIKAI PROJEKTELLENŐR

Teszt terv Új funkció implementációja meglévı alkalmazásba

Szoftver-mérés. Szoftver metrikák. Szoftver mérés

A szoftverfejlesztés eszközei

ORVOSTECHNIKAI ESZKÖZÖK GYÁRTMÁNYFEJLESZTÉSE AKTÍV ORVOSI ESZKÖZÖK FEJLESZTÉSE - PEMS V&V

Unit Teszt. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) Unit Teszt / 22

Tartalom. Konfiguráció menedzsment bevezetési tapasztalatok. Bevezetés. Tipikus konfigurációs adatbázis kialakítási projekt. Adatbázis szerkezet

Java-ról Kotlinra. Ekler Péter AutSoft BME AUT. AutSoft

Laborinformációs menedzsment rendszerek. validálása. Molnár Piroska Rikker Tamás (Dr. Vékes Erika NAH)

Cloud Akkreditációs Szolgáltatás indítása CLAKK projekt. Kozlovszky Miklós, Németh Zsolt, Lovas Róbert 9. LPDS MTA SZTAKI Tudományos nap

Szoftver-technológia II. Szoftver újrafelhasználás. (Software reuse) Irodalom

Szoftverminőségbiztosítás

MŰSZAKI TESZTTERVEZÉSI TECHNIKÁK TESZTELÉSI TECHNIKÁK KIVÁLASZTÁSA

Rubin SPIRIT TEST. Rubin firmware-ek és hardverek tesztelése esettanulmány V1.0. Készítette: Hajnali Krisztián Jóváhagyta: Varga József

Szoftverminőségbiztosítás

BASH script programozás II. Vezérlési szerkezetek

Használati alapú és modell alapú tesztelés kombinálása szolgáltatásorientált architektúrák teszteléséhez az ipari gyakorlatban

Miskolci Egyetem Általános Informatikai Tanszék

A tesztelés feladata. Verifikáció

Szoftverminőségbiztosítás

Programtervezés. Dr. Iványi Péter

Orvostechnikai eszközök gyártmányfejlesztése Aktív orvosi eszközök fejlesztése PEMS V&V. Nagy Katinka

Hálózati szolgáltatások biztosításának felügyeleti elemei

Szoftverminőségbiztosítás

Intervenciós röntgen berendezés teljesítményszabályozójának automatizált tesztelése

Adatbázis rendszerek. dr. Siki Zoltán

Okosház Test Plan. Tartalomjegyzék

Windows hálózati adminisztráció segédlet a gyakorlati órákhoz

Adatbázis-kezelő rendszerek. dr. Siki Zoltán

VÁLLALATI INFORMÁCIÓS RENDSZEREK. Debrenti Attila Sándor

Automatikus tesztgenerálás modell ellenőrző segítségével

JSF alkalmazások teljesítményhangolása JMeter és dynatrace segítségével

AZ INTEGRÁLT NYOMONKÖVETŐ RENDSZER BEMUTATÁSA (TÁMOP B) Kern Zoltán Közoktatási szakértő

(Teszt)automatizálás. Bevezető

A Feldspar fordító, illetve Feldspar programok tesztelése

Adatbázisok elleni fenyegetések rendszerezése. Fleiner Rita BMF/NIK Robothadviselés 2009

Programozási technológia II 7. előadás. Verifikáció és validáció Giachetta Roberto

Objektumorientált programozás Pál László. Sapientia EMTE, Csíkszereda, 2014/2015

Szoftverminőségbiztosítás

ITIL alapú IT környezet kialakítás és IT szolgáltatás menedzsment megvalósítás az FHB-ban

kodolosuli.hu: Interaktív, programozást tanító portál BALLA TAMÁS, DR. KIRÁLY SÁNDOR NETWORKSHOP 2017, SZEGED

Programfejlesztési Modellek

Infor PM10 Üzleti intelligencia megoldás

Informatikai projektellenőr szerepe/feladatai Informatika / Az informatika térhódítása Függőség az információtól / informatikától Információs

TÁMOP /1/A projekt Regionális turisztikai menedzsment /BSc/ /Differenciált szakmai ismeretek modul/ Információs irodák menedzsmentje

Szoftver újrafelhasználás

Eseményvezérelt alkalmazások fejlesztése I 11. előadás. Szoftverek tesztelése

Pénzügyi algoritmusok

A szoftverfejlesztés eszközei

Leolvasói rendszer kialakításának koncepciója ipari mobil eszközökkel (ipari PDA-val)

S z á m í t ó g é p e s a l a p i s m e r e t e k

JUnit. JUnit használata. IDE támogatás. Parancssori használat. Teszt készítése. Teszt készítése

Moodle -egy ingyenes, sokoldalú LMS rendszer használata a felsőoktatásban

Operációs Rendszerek II. labor. 2. alkalom

Felhasználók hitelesítése adatbiztonság szállításkor. Felhasználóknak szeparálása

Követelmény alapú minőségbiztosítás az államigazgatásban

EGYSZERŰSÍTJÜK AZ IRODAI MUNKÁT.

Alkalmazás technológiai frissítés migrációs és üzemeltetési tapasztalatok

Angolul: Extreme Programming, röviden: XP Agilis módszertan. Más módszertanok bevált technikáinak extrém módú (nagyon jó) használata

Intelligens eszközök fejlesztése az ipari automatizálásban Evosoft Hungary kft., Evosoft Hungary Kft.

Útmutató az OKM 2007 FIT-jelentés telepítéséhez

Dokumentumok Information kezelése? Management Információ - management. Professzionális dokumentumkezelés hiteles másolat készítés. Offisys Kft.

Eseménykezelés. Szoftvertervezés és -fejlesztés II. előadás. Szénási Sándor.

Miskolci Egyetem Alkalmazott Informatikai Intézeti Tanszék A minőségbiztosítás informatikája. Készítette: Urbán Norbert

Az alkalmazás minőségbiztosítás folyamata Fókuszban a teszt-automatizálás

Webes alkalmazások fejlesztése

KÖVETKEZŐ GENERÁCIÓS NAGYVÁLLALATI TARTALOMKEZELŐ MEGOLDÁSOK Stratis Kft. / Autonomy üzleti reggeli / Mezei Ferenc üzletág-igazgató

Bevezetés... xi Ebben a könyvben... xi Gyakorlati segítség... xii 1. Az átállás megtervezése...1 Ebben a fejezetben... 1 Áttekintés: az áttérés

Java programozási nyelv

Google App Engine az Oktatásban 1.0. ügyvezető MattaKis Consulting

Digitális Technika. Dr. Oniga István Debreceni Egyetem, Informatikai Kar

Programrendszerek tanúsítása szoftverminőség mérése

Modell alapú tesztelés mobil környezetben

Szolgáltatás mérés/riportolás magas fokon Egy valós megoldás Pepsi berkekben

FELNŐTTKÉPZÉSI SZAKMAI PROGRAMKÖVETELMÉNY

1. Bevezető. 2. Sérülékenységek

Oracle Enterprise Manager 12c Cloud Control és 11g Grid Control összehasonlítás

TOGAF elemei a gyakorlatban

Java és web programozás

PolyVision illesztőprogram Kibocsátási megjegyzések 2.2. változat

eseményvezérelt megoldások Vizuális programozás 5. előadás

MIÉRT KELL TESZTELNI?

OO rendszerek jellemzői

Ariadne Kábeltesztelő Rendszer. Neuron intelligens megoldások a kábelipar számára.

Integrációs mellékhatások és gyógymódok a felhőben. Géczy Viktor Üzletfejlesztési igazgató

A vállalat mint rendszer. Informatikai rendszerek Vállalati információs rendszerek. Üzleti kapcsolatok. Vevői információs kapcsolatok. Cég.

Komponens alapú fejlesztés

Átírás:

ESZKÖZTÁMOGATÁS A TESZTELÉSBEN MUNKAERŐ-PIACI IGÉNYEKNEK MEGFELELŐ, GYAKORLATORIENTÁLT KÉPZÉSEK, SZOLGÁLTATÁSOK A DEBRECENI EGYETEMEN ÉLELMISZERIPAR, GÉPÉSZET, INFORMATIKA, TURISZTIKA ÉS VENDÉGLÁTÁS TERÜLETEN

Eszköztámogatás a tesztelésben 6.2. Eszközök hatékony használata: a lehetséges előnyök és kockázatok 6.2.1 A tesztelés eszköztámogatásának lehetséges előnyei és kockázatai 6.2.2 Különleges tényezők egyes eszköz-típusoknál 6.3. Eszköz bevezetése egy szervezetnél.

Mi történik a hibajeggyel?

Tesztelést támogató eszköz

Teszt menedzsment és tesztelés támogatás Teszt esetekhez kapcsolódó adatok menedzsmentje Teszt esetek állapotainak jelzése Végrehajtandó teszt esetek ütemezése Teszteléshez kapcsolódó tevékenységek menedzselése ( tesztelés tervezésével töltött idő, teszt végrehajtás) Tesztelések, teszt eredmények, hibák követhetősége a követelményeknek megfelelően Teszt eredmények naplózása Státusz és trend adatok megjelenítése Megjegyzés: A teszt menedzsment eszközök maguk nem futtatnak teszteket.

Incidens menedzsment eszköz tulajdonságai Incidenshez tartózó attribútumok információjának tárolása Csatolmányok tárolása Incidens priorizáció Emberekhez köthető tevékenységek (fix, confirmation test, etc.); Státuszok (e.g. open, rejected, duplicate, deferred, ready for confirmation test, closed); Riportálási lehetőségek (e.g. átlagos nyitott státusz ideje, minden státuszhoz az incidensek száma, nyitott lezárt incidensek stb.).

Teszt és tesztelést támogató eszközök Teszt menedzsment eszközök Követelmény menedzsment eszközök Incidens menedzsment eszközök Konfiguráció menedzsment eszközök Teszt végrehajtást és futtatást támogató eszközök

Tesztelő eszközök besorolása Nem feltétlenül lehet egy az egyben való megfeleltetést tenni eszköz és tesztelési típusok között Néhány eszköz kevés funkcióval bír és nagyon specifikus tevékenységet képes kezelni Kereskedelmi forgalomban kapható eszközök szélesebb funkciókkal bírnak

Tesztelő eszközök besorolása Vannak olyan esetek amikor az ember sokkal jobban vagy könnyebben old meg dolgokat mint a számítógép Vannak olyan esetek amikor a számítógép tud jobban és gyorsabban megoldani dolgokat

Teszt végrehajtást és futtatást támogató eszközök Automatizált szoftvertesztelés

Automatizált szoftver tesztelés Tesztek végrehajtásában Előredefiniált lépések végrehajtása Teszt eredmények naplózása Sok ismétlődő lépés végrehajtása Nagy mennyiségű adat használata (készítés, ellenőrzés)

Teljesítmény tesztelés Load Volume Stress

Load teszt A load teszteléssel ellenőrizzük, hogy a rendszer képes megbirkózni a várható tranzakciók számával.

Volume teszt A volume" teszteléssel ellenőrizzük, hogy a rendszer képes megbirkózni nagy adatmennyiséggel, például sok adat egy fájlban.

Stress teszt A stress" teszt az ami túllép a rendszer szokásos várható használatától (mi történne ha nem úgy használnánk mint ahogy tervezve lett).

Automatizált szoftver tesztelés Automatizált teszteléssel nem lehet teljesen kiváltani a manuális tesztelést

Automatizált szoftver tesztelés - érvek Hatékonyság növelés Tesztelési költségek csökkentése Erőforrás csökkentés Manuális tesztelési hibák megszüntetése Unalmas feladatok végrehajtása Pontos eredmények Bármikor végrehajtható Újrahasznosítható

Automatizált szoftver tesztelés Miért nem egyszerű? Speciális szoftver és hardver igény Programozási jártasság Nem váltja ki teljesen a manuális tesztelést Idő kell a megtérüléshez

Automatizált szoftver tesztelés Területek Regressziós teszt Smoke teszt Nagy adatkombináció Sok ismétlődő lépés Adat generálás

Automatizált szoftver tesztelés Mikor nem javasolt? Alkalmazás funkcionalitása nem stabil Gyakran változó kód Tesztelési folyamat nincs dokumentálva Megtérülés minimális Rövid idő a teszt elkészítésére

Automatizált szoftver tesztelés Mikor lehet használni? Tesztelési időszakban Fejlesztési időszakban Meglévő funkciók nem sérültek a fejlesztés során Adatgenerálás modul tesztelésre Tesztelési időszak előkészületeinél Bármikor

Automatizált szoftver tesztelés Különböző szintek lehetségesek Lineáris automatizálás Strukturált automatizálás Megosztott automatizálás Adat vezérelt automatizálás Kulcsszó alapú automatizálás

Keretrendszer - Framework Önmagában közvetlenül nem használható, de bizonyos tipikus feladatok elvégzését nagy mértékben segítő, egységes módon megszerkesztett "építőkockákat" (komponenseket) tartalmazó halmaz.

Lineáris automatizálás Kevés vagy nem létező: Modularitás Újrahasznosíthatóság Paraméterezhetőség Szinte egy az egyben megfelel a manuális teszt esetnek

Lineáris automatizálás Input Name into Username textbox Input Pass into Password textbox Click Login button If Hello Name exists then Test Passed Else Test Failed End If

Lineáris automatizálás Előnyök Gyors fejlesztés Rövid eszköz betanulási idő A Record funkciónak köszönhetően információhoz jutunk az alkalmazás felépítéséről Független scriptek Egyszerű hiba detektálás Kevés tervezés szükséges Hátrányok/Kockázatok Futtatás néha helytelen Egy dimenziós script Nehéz olvashatóság Alkalmazás magas ismerete Újrafelhasználhatóság hiánya Paraméterezés hiánya Költséges fenntarthatóság

Adat vezérelt Funkcionális dekompozíció Lehet egyszerű, de lehet igen jól definiált, komplex is Karbantarthatóság szempontjából nagyon jó Fontos, hogy jól ismerjük a keretrendszert mert a kulcsszó vezérelt erre épül Ez egy hibrid rendszer, létezik külön-külön is a kettő

Funkcionális dekompozíció Moduláris komponensek készítése Navigálás Adatbevitel 1 Navigálás( Címlista ) 2 Adatbevitel( Debrecen ) 3 Adatellenőrzés( Debrecen ) Adatellenőrzés

Funkcionális dekompozíció A modulok az alkalmazás funkcionalitásának felelnek meg Léteznek egyéb felhasználó, tesztelő által definiált modulok: Navigálást végző modulok Hiba kezelő modulok Egyéb modulok

Adatvezérelt automatizálás Az adat külön van tárolva Nem része a scriptnek Paraméterezés

Adatvezérelt automatizálás Input Name into Username textbox Input Pass into Password textbox Click Login button If Hello Name exists then Test Passed Else Test Failed End If NameParameter PassParameter Eszter Balázs Péter PassEszter PassBalázs PassPéter

Adatvezérelt automatizálás Open Data Table Input <NameParameter> into Username textbox Input <PassParameter> into Password textbox Click Login button If Hello <NameParameter> exists then Test Passed Else Test Failed End If Close Data Table

Adatvezérelt Funkcionális dekompozíció Előnyök Újrafelhasználhatóság Korai script készítés Könnyű olvashatóság Standardizálás Hibakezelés használata Hátrányok/Kockázatok Technikai szakemberekre van szükség Komplexebb fenntarthatóság Alapos tervezést igényel

Kulcsszó alapú automatizálás Gyakran Tábla vezérelt automatizálásnak hívják Ez a keretrendszer a leginkább alkalmazás független Adattáblában Kulcsszavakat tárolunk ( Action )

Kulcsszó alapú automatizálás Képernyő Objektum Action Érték Recovery Megjegyzés Belépés Username Beírás Balázs Belépés Password Beírás PassBalázs Belépés Login Kattintás Helló Ellenőrzés Stop_Test

Kulcsszó alapú automatizálás A kulcsszavak (Action) alkalmazás specifikus és alkalmazás független funkcionalitással bíró függvényekkel vagy scriptekkel vannak kapcsolatban

Kulcsszó alapú automatizálás Open Keyword File Execute Data rows to end of file (EOF) If <Action> == Beírás Then Call Beírás(Screen, Object, Value) If <Action> == Kattintás Then Call Kattintás(Screen, Object) If <Action> == Ellenőrzés Then Execute Ellenőrzés(Screen) Implement Exception Handling Routine Based on Pass/FailStatus End Loop

Kulcsszó alapú automatizálás Előnyök Újrafelhasználhatóság Korai script készítés Könnyű olvashatóság Standardizálás Hibakezelés használata Más tesztelők is tudnak teszt eseteket készíteni Hátrányok/Kockázatok Technikai szakemberekre van szükség Komplexebb fenntarthatóság Alapos tervezést igényel Felsővezetői támogatás szükséges (költség, idő, erőforrás)

Automatizált szoftver tesztelés Eszköz tulajdonságok Felvétel & Visszajátszás Objektumok tárolása felhasználói felületről Naplózás Be és kimenő adatok tárolása Futási idők mérése Szinkronizálás a tesztelt alkalmazással Kapcsolat más eszközökkel

Automatizált szoftver tesztelés - Felvétel & Visszajátszás

Automatizált szoftver tesztelés - Objektumok tárolása

Automatizált szoftver tesztelés - Naplózás

Automatizált szoftver tesztelés Tesztek / függvények Helyreállítási forgatókönyv Teszt adat Teszt automatizálás Naplózás Objektumok Alkalmazás

Manuális vs. Automatikus Manuális Vázlatos teszt tervezés is elég Végrehajtás során a tervezési hibák küszöbölhetők Teszt végrehajtás idő és erőforrás igényes Ismétlődő végrehajtások, nagy kombinációk hatással vannak a költségekre és erőforrásokra Tesztelők elfáradhatnak, hibát véthetnek Automatizált Pontos tervezést igényel Pontosan azt csinálja amit mondunk neki, nem képes dönteni 24/7 elérhetőség Könnyű teszteket újrafuttatni Nagy kombinációk végrehajtása nincs nagy hatással a költségekre Nem unja meg a végrehajtást

Eszközök használatának előnyei / hátrányai

Előnyök Ismétlődő feladatok csökkentése Jobb újrafelhasználhatóság Részletes információ a tesztről, tesztelésről

Hátrányok / Kockáztok Irreális elvárások az eszköztől Idő, költség, erőforrás alábecslés Fenntarthatóság alábecslés Tapasztalat szükséges jó tesztek készítéséhez Tapasztalat szükséges az eszköz használatához

Eszköz használatának bevezetése egy vállalatnál

Eszköz választáskor tartsuk szem előtt a következőket Készen állunk a változásra? Területek beazonosítása, ahol előnyt jelenthet a tesztelési folyamatban Tegyünk egy próbát az eszközzel, hogy biztosak legyünk benne azt tudja amire nekünk szükségünk van Nézzük meg, hogy elérhetőek a megfelelő információk (dokumentációk, fórumok stb.) Bevezetés megtervezése

Tegyünk egy próbát az eszközzel Tudjunk meg minél több információt az eszközről Vizsgáljuk meg, hogyan illeszkedik be az eszköz a meglévő folyamatokba. Ha kell akkor hogyan változtassunk a folyamatokon, hogy az eszközt a lehető leghatékonyabban tudjuk használni Határozzuk meg, hogy milyen standardok mentén fogjuk használni az eszközt (függvények, modulok, elnevezések stb.)

ROI Return on Investment Befektetés megtérülés Mérőszámok használata Automatizálás hatékonyságának követése

ROI Mérőszámok Teszt tervezésre fordított idő Teszt elkészítésére fordított idő Teszt adat készítési idő Teszt karbantartására fordított idő Teszt végrehajtási idő Hányszor hajtódik végre egy tesztelési ciklusban Mennyi tesztelési ciklus van

ROI Egyszerű példa Manuális Automatikus Teszt végrehajtás (perc) 8 5 Tesztek száma 10 10 Egyéb idő (perc) 30 7 Összesen (perc) 110 57

Költség ROI $80 000 $70 000 $60 000 $50 000 $40 000 $30 000 Befektetés/Ráfordítás ($) Összes befektetés/ráfordítás ($) Megtérülés ($) Összes megtérülés ($) $20 000 $10 000 $0 2007 Q3 2007 Q4 2008 Q1 2008 Q2 2008 Q3 2008 Q4 2009 Q1 2009 Q2 2009 Q3 2009 Q4 Tesztelési ciklusok

Selenium IDE Black Box típusú tesztek készítése A tesztek felvétele a Selenium IDE segítségével történik Firefox plugin

Selenium IDE

Selenium IDE

Kérdések?

KÖSZÖNÖM A FIGYELMET! MUNKAERŐ-PIACI IGÉNYEKNEK MEGFELELŐ, GYAKORLATORIENTÁLT KÉPZÉSEK, SZOLGÁLTATÁSOK A DEBRECENI EGYETEMEN ÉLELMISZERIPAR, GÉPÉSZET, INFORMATIKA, TURISZTIKA ÉS VENDÉGLÁTÁS TERÜLETEN