Szoftver tesztelés a gyakorlatban 2
|
|
- Frigyes Borbély
- 7 évvel ezelőtt
- Látták:
Átírás
1 Szoftver tesztelés a gyakorlatban 2 Struktúrális tesztelés 2 Struktúrális tesztelés! Implementációs részletek figyelembevétele! Tesztelési célok -> lefedettség! Implicit hibamodell! A hibák a vezérlési szerkezeteket érintik! Vezérlési folyam követése! Kimerít! út tesztelés nem végezhet!! Metrika alapú teszt tervezés
2 3 Tesztesetek Specifikált m!ködés Tesztesetek 2 Program m!ködése Tesztesetek 1 Struktúrális tesztelés alkalmazása 4! Vezérlés-intenzív alkalmazások! Tervezési hibák felderítése! Szabványok szerinti tesztelés
3 Vezérlés-folyam alapú tesztelés 5! vezérlés-folyam gráf! irányított gráf! csomópontok: utasítások! élek: egymást követ! utasítások között! többféle granuláltságú vezérlés-folyam gráf! visszavezethet!k egyedi DD-út gráffá 6 Vezérlés-folyam gráf (pl.) ö
4 7 Vezérlés-folyam gráf (pl.)! struktúrálatlan program! lehetetlen a kimerít! tesztelés first A B C D E F G last 8 DD-út! Döntés-döntés út! csomópont indeg=0! csomópont outdeg=0! csomópont indeg"2 vagy outdeg"2! csomópont indeg=1 és outdeg=1! maximális lánchossz"1
5 9 DD-út gráf példa first A B C D E F G H I J K L M N O last 10 Teszt lefedettségi metrikák C 0 C 1 C 1 p minden utasítás minden DD-út minden pred. összes kimenetel C 2 +ciklusok C d +függ! DD-út párok C MCC többszörös feltétel C # minden lehetséges út
6 11 Ciklusok kezelése! Önálló ciklus (max n futás)! egyszer! kétszer! m(<n)-szer! n-1, n, n+1 menet! Egymásba ágyazott ciklusok! belülr!l kifelé haladva, küls!k min., tesztelés alatt álló végig, már teszteltek fix értéken 12 Ciklusok kezelése (folyt.) first first first A A A B B B C C C D D D last last last
7 13 Független utak! legalább egy élben eltérnek egymástól! minimális cél a független utak egy maximális halmazának lefedése tesztekkel! a maximális úthalmaz nem egyedi! a ciklomatikus komplexitás használható a független utak számának meghatározására 14 Ciklomatikus komplexitás! 1976 Thomas McCabe! statikus szoftver metrika! lineárisan független utak száma egy program modulban! egész szám! programnyelv független
8 15 Ciklomatikus komplexitás! gráfok cikomatikus száma! V(G)=e-n+p! e élek! n csomópontok! p komponensek A A 1 2 B D B D E 7 8 E C F C F 9 10 G G Független utak (pl.) A 1 2 B D E 7 8 C F Utak\Élek A,B,C,G A,B,C,B,C,G A,B,E,F,G A,D,E,F,G A,D,F,G A,B,C,B,E,F,G A,B,C,B,C,B,C,G G
9 last d a A first 17 Alapvet! komplexitás! kondenzációs gráf komplexitása! struktúrált programozás! szekvencia! if-then! if-then-else! case! el!l tesztel! ciklus! hátul tesztel! ciklus 18 Alapvet! komplexitás (pl.) first first first first A A A A B a a a first C D E F F F F e G H G H G H G c I J I J I b K L K L N M N M N last O O O O last last last last
10 19 A metrika felhasználása! er!s korreláció a metrika és a hibák gyakorisága között! kockázat (risk) becslés! program érthet!sége! karbantartás, módosítás! tesztelhet!ség 20 Kockázat becslés Ciklomatikus komplexitás Kockázat 1-10 Egyszer$ program Komplex program, mérsékelt kockázat Komplex, magas kockázat Tesztelhetetlen program
11 21 Komplexitás példa! RPC csomagfeldolgozó rutin! tevékenységek a csomagban érkez! üzenet mez!i és beállítási adatok alapján! 160 sor (121 kódsor)! 15 % megjegyzés 22 Komplexitás példa (folyt.)! Egyszer$sített vezérlés-folyam gráf
12 23 Egyéb tesztelési metrikák! függvény lefedettség! hívás/visszatérés lefedettség! ciklus lefedettség! mutációs lefedettség 24 Adatfolyam alapú tesztelés! változók értékadásai és felhasználásuk! definiálás/hivatkozás hibák! never used! never defined! define more times before used! DF-utak (definíció/felhasználás)! DEF(v,m)! USE(v,n), p-use, c-use! definition-clear path
13 Adatfolyam alapú tesztelés (folyt.) 25! Rapps-Weyuker adatfolyam lefedési metrikák! All-DU paths! All-Uses! All C-uses/some P-uses! All P-uses/some C-uses! All-Defs 26 Struktúrális tesztelési példák Állítsa el! az alábbi programrészlet vezérlésfolyam gráfját! A gráf alapján határozza meg a teljes független út lefedéshez szükséges tesztek számát! 1 int testfloat(char s[]){ 2 int i=0; 3 int f=0; 4 while(isspace(s[i])) 5 i++; 6 if(s[i]=='+' s[i]=='-') 7 i++; 8 f=i; 9 while(isdigit(s[i])) 10 i++; 11 if(s[i]=='.'){ 12 i++; 13 f=i; 14 while(isdigit(s[i])) 15 i++; 16 if(f==i) 17 return 0; 18 } 19 if(f==i) 20 return 0; 21 if(s[i]=='e' s[i]=='e'){ 22 i++; 23 if(s[i]=='+' s[i]=='-') 24 i++; 25 f=i; 26 while(isdigit(s[i])) 27 i++; 28 if(f==i) 29 return 0; 30 } 31 if(s[i]) 32 return 0; 33 else return 1; 34 }
14 Struktúrális tesztelési példák 27! V(G)=e-n+2= =13! V(G)=D+1=12+1=13 Struktúrális tesztelési példák (folyt.) 28 Hány teszteset kellene teljes logikai kifejezés (boole, C MCC ) lefedés eléréséhez? Predikátum csomópontok összetett logikai kifejezéseinek összes részkifejezését a lehetséges kimenetekbe kell vinni. (N rész kifejezésre ez 2 N.) Pl.:... if(s[i]=='+' s[i]=='-')... A két rész kifejezés nem fügettlen! s[i]== + s[i]== - teljes kif. s[i]= + true false true s[i]= - false true true s[i]= a false false false lehetetlen true true true
15 Struktúrális tesztelési példák (folyt.) 29 Amikor a C MCC elérése fontos lehet: if ( feltétel1 && ( feltétel2 függvény1() ) ) utasítás1; else utasítás2; Tesztesetek: 1. feltétel1 hamis 2. feltétel1 igaz, feltétel2 igaz Teljes C 1 lefedés, de függvény1() nem került meghívásra. Struktúrális tesztelési példák (folyt.) 30 Mit tudunk mondani a függvény alapvet! (esszenciális) komplexitásáról? A kondenzációs gráf ciklomatikus komplexitása 1-e? Sérülnek-e struktúrált programozási elvek? belépés ciklusba nem a ciklus fejben kilépés ciklusból nem a feltétel vizsgálatkor kilépés szelekciós szerkezetb!l belépés szelekciós szerkezetbe nem a szelekciónál
16 Struktúrális tesztelési példák (f.) 31 Mit tudunk mondani a függvény alapvet! (esszenciális) komplexitásáról? összetett szelekciós blokkban, nem a függvény végén lév! return utasítás => struktúrálatlanság Struktúrális tesztelési példák (folyt.) 32 A programkódból adjon meg legalább három DF-utat (Definíció- Felhasználás, DEF-USE), adja meg, hogy ezek az utak definition clear utak-e, illetve hogy C (computation), vagy P (predicate) felhasználásról van-e szó. du-path1: DEF(i,2)..C-USE(i,8) nem definíció mentes pl. DEF(i,5) du-path2: DEF(f,3)..P-USE(f,16) nem definíció mentes pl. DEF(f,8) du-path3: DEF(f,25)..P-USE(f,28) definíció mentes
17 Struktúrális tesztelési példák (folyt.) 33 C for ciklusok kezelése for(kifejezés1;kifejezés2;kifejezés3) utasítás; kifejezés1; /*def */ while(kifejezés2){ /*p-use */ utasítás; kifejezés3; /*def */ } Struktúrális tesztelési példák (folyt.) 34! Relációs operátorok helyességének tesztelése! rendezési relációk! 3 lehetséges eset! a! "#$!%&#! => 3 teszteset
18 Funkcionális és struktúrális tesztelés 35! önmagában egyik módszer sem kielégít!! nincs szignifikáns különbség a hatékonyságban! kiegészítik egymást! végrehajtási sorrend:! funkcionális tesztek! struktúrális tesztek Funkcionális és struktúrális tesztelés (folyt.) 36! McCabe a ciklomatikus komplexitásról és az útalapú tesztelésr!l! csak tesztelési min!ségi kritérium, nem módszer a tesztesetek azonosítására! Ciklomatikus komplexitás, DD-utak! topológiailag lehetséges utak
19 37 Struktúrális tesztelés Specifikált viselkedés Programozott viselkedés (Megvalósulható utak) Topológiailag lehetséges utak 38 Tesztelési stratégiák! Egységek (modulok) tesztelése! Izolációs tesztelés! Inkrementális tesztelés (hibrid techn.)! Integrációs tesztelés! Inkrementális tesztelés! Big bang tesztelés
20 39 Az egységtesztelés szerepe! moduláris fejlesztés -> moduláris tesztelhet!ség! white box jelleg! fejlesztés közbeni tesztelés! tesztelési komplexitás csökkentés! hatékonyabb integrációs fázis Az egység tesztelés szükségessége 40 input modul integrált rendszer output input modul output
21 41 Az izolációs tesztelés el!nyei! kisebb tesztelési komplexitás! könnyebb strukturális lefedettséget elérni! egyszer$bb tesztvégrehajtó egységek és csonk modulok! modul változtatása csak a hozzátartozó tesztek módosításával jár! tiszta egységtesztek Az izolációs tesztelés hátrányai 42! nem biztosít korai integrációt! tesztvégrehajtó (driver) és csonk (stub) modulok szükségesek a hierarchia minden szintjén
22 43 Az egységtesztelés el!nyei! könnyebb teszt generálás és karbantartás! alacsonyabb relatív id!igény! hibák pontos azonosítása! párhuzamosíthatóság 44 Integrációs tesztelés! Mars Climate Orbiter! Lockheed Martin - pounds! Jet Propulsion Laboratory - newton! Együttm$ködés tesztelése! Interfészek tesztelése! Módszerek! funkcionális dekompozíció alapú! hívási gráf alapú! big bang
23 45 Dekompozíciós int. tesztelés! Funkcionális dekompozíció -> modul fa! Korábban tesztelt modulok! Modulok integrálása! top-down! bottom-up! szendvics! Meghajtó modulok és modul-csonkok 46 Top-down tesztelés
24 47 A top-down tesztelés el!nyei! korai integráció! top-down tervezés esetén id! hatékony! er!sen követelmény orientált egység tesztelés! alsóbb szinteken megvalósított redundáns funkcionalitás kisz$rhet! A top-down tesztelés hátrányai 48! csonkok szükségesek! egyre komplikáltabb tesztek! egyre nehezebben elérhet! struktúrális lefedettség! modul módosítása más modulok tesztjeinek módosítását igényli
25 49 Bottom-up tesztelés 50 A bottom-up tesztelés el!nyei! korai integráció! nincs szükség csonkokra! alsó szint$ modulok könny$ tesztelhet!sége! jól használható objektumok tesztelésére
26 A bottom-up tesztelés hátrányai 51! egyre komplikáltabb tesztek! egyre nehezebben elérhet! struktúrális lefedettség! meg kell várni az alacsonyabb szint$ modulok tesztelését 52 Szendvics integrálás! Big bang integráció részfákon
27 Integrálás a hívási gráf alapján 53! Funkcionális dekompozíció <-> hívási gráf! elmozdulás struktúrális irányba! Páronkénti integrálás! Szomszédos integrálás 54 Páronkénti integrálás! csonk/meghajtó fejlesztés csökkentése! hívási gráf szomszédos párjainak integrálása! hívási gráf élenkénti tesztek
28 55 Páronkénti integrálás Szomszédos integrálás! integrálás egy gráf csomópont szomszédságán! a csomóponttól egy él távolságokra lév! csomópontok halmazával! pred. és succ. csomópontok irányított gráfnál, vagyis meghajtó és csonkok! szomszédságok száma! Sz=N bels! +N forrás! N bels! =N-(N forrás +N nyel! )
29 57 Szomszédos integrálás Út alapú integrálás! Viselkedési szálak! Interfészek tesztelése vs. interakciók tesztelése! Végrehajtás (vezérlés folyam) modulok között! Kiterjesztett vezérlés folyam gráf! modul forrás csomópontok (kezdet, folytatás)! modul nyel!k (vég, vezérlés átadás)
30 59 Út alapú integrálás! Modul végrehajtási út (MEP)! kiterjesztett forrástól nyel!ig! Üzenetek (modulok között)! vezérlés átadás! MM-út! adat átadás! utasítás végrehajtási utak és üzenetek szekvenciája 60 MM-út gráf! Adott modulra (egységre)! csomópontok: MEP-ek! élek: modulok közötti üzenetek! Integrációs tesztelés az MM-út gráf alapján! MM-utak mélysége! üzenet tétlenség! adatfolyam tétlenség
31 61 MM-utak A B C MEP(A,2) MEP(B,1) 3 4 MEP(A,1) MEP(C,1) 3 4 MEP(B,2) 5 MEP(A,3) MEP(C,2) MM-út MM-út gráf 62 Adatfolyam tétlenség! Adattárolásra vezet! feldolgozás! adatfolyam diagram F1 A F2 Közvetlen adatfolyam kapcsolat F1 F2 A Közvetett adatfolyam kapcsolat
32 63 MM-út komplexitás! Egyszer$sített MM-út gráf! UML szekvencia diagramok! ciklomatikus komplexitás A B C 64 MM-út alapú tesztelés! Funkcionális! ki- és bemenetek! Struktúrális! azonosítás, meghatározás! Mindenféle életciklus modellhez! Meghajtó és csonk fejlesztés eliminálása
Szoftverminőségbiztosítás
NGB_IN003_1 SZE 2014-15/2 (10) Szoftverminőségbiztosítás Struktúra alapú (white-box) technikák A struktúrális tesztelés Implementációs részletek figyelembevétele Tesztelési célok -> lefedettség Implicit
RészletesebbenSzoftverminőségbiztosítás
NGB_IN003_1 SZE 2017-18/2 (10) Szoftverminőségbiztosítás Struktúra alapú (white-box) technikák A struktúrális tesztelés Implementációs részletek figyelembevétele Tesztelési célok -> lefedettség Implicit
RészletesebbenSzoftver-mérés. Szoftver metrikák. Szoftver mérés
Szoftver-mérés Szoftver metrikák Szoftver mérés Szoftver jellemz! megadása numerikus értékkel Technikák, termékek, folyamatok objektív összehasonlítása Mér! szoftverek, programok CASE eszközök Kevés szabványos
RészletesebbenSzoftverminőségbiztosítás
NGB_IN003_1 SZE 2014-15/2 (8) Szoftverminőségbiztosítás Szoftvertesztelési folyamat (folyt.) Szoftvertesztelési ráfordítások (Perry 1995) Tesztelésre fordítódik a projekt költségvetés 24%-a a projekt menedzsment
RészletesebbenStruktúra alapú teszttervezési módszerek
Szoftverellenőrzési technikák Struktúra alapú teszttervezési módszerek Majzik István, Micskei Zoltán http://www.inf.mit.bme.hu/ 1 Teszttervezés módszerei I. Specifikáció alapú A rendszer mint fekete doboz
RészletesebbenSzoftverminőségbiztosítás
NGB_IN003_1 SZE 2017-18/2 (9) Szoftverminőségbiztosítás Specifikáció alapú (black-box) technikák A szoftver mint leképezés Szoftverhiba Hibát okozó bement Hibás kimenet Input Szoftver Output Funkcionális
RészletesebbenJava programozási nyelv
Java programozási nyelv 2. rész Vezérlő szerkezetek Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/23 Tartalomjegyzék
RészletesebbenMegoldások a mintavizsga kérdések a VIMIAC04 tárgy ellenőrzési technikák részéhez kapcsolódóan (2017. május)
Megoldások a mintavizsga kérdések a VIMIAC04 tárgy ellenőrzési technikák részéhez kapcsolódóan (2017. május) Teszt kérdések 1. Melyik állítás igaz a folytonos integrációval (CI) kapcsolatban? a. Folytonos
RészletesebbenSzoftver újrafelhasználás
Szoftver újrafelhasználás Szoftver újrafelhasználás Szoftver fejlesztésekor korábbi fejlesztésekkor létrehozott kód felhasználása architektúra felhasználása tudás felhasználása Nem azonos a portolással
RészletesebbenKód átvizsgálás. Irodalom. (Code review) code review,smart Bear Inc., ! Jason Cohen: Best kept secrets of peer
Kód átvizsgálás (Code review) 2 Irodalom! Jason Cohen: Best kept secrets of peer code review,smart Bear Inc., 2006 3 Célok, el!nyök! Jobb min!ség" kód! jobban karbantartható! Kevesebb hiba a kódban! rövidebb
RészletesebbenA szoftver-folyamat. Szoftver életciklus modellek. Szoftver-technológia I. Irodalom
A szoftver-folyamat Szoftver életciklus modellek Irodalom Ian Sommerville: Software Engineering, 7th e. chapter 4. Roger S. Pressman: Software Engineering, 5th e. chapter 2. 2 A szoftver-folyamat Szoftver
RészletesebbenMiskolci Egyetem Általános Informatikai Tanszék
Software tesztelés Miskolci Egyetem Általános Informatikai Tanszék Software tesztelés SWTESZT / 1 A tesztelés feladata Két alapvető cél rendszerben található hibák felderítése annak ellenőrzése, hogy a
RészletesebbenA tesztelés feladata. Verifikáció
Software tesztelés Miskolci Egyetem Általános Informatikai Tanszék Software tesztelés SWTESZT / 1 A tesztelés feladata Két alapvető cél rendszerben található hibák felderítése annak ellenőrzése, hogy a
RészletesebbenTeszttervezés. Majzik István, Micskei Zoltán. Integrációs és ellenőrzési technikák (VIMIA04) Méréstechnika és Információs Rendszerek Tanszék
Integrációs és ellenőrzési technikák (VIMIA04) Teszttervezés Majzik István, Micskei Zoltán Méréstechnika és Információs Rendszerek Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és
RészletesebbenModellek ellenőrzése és tesztelése
Modellek ellenőrzése és tesztelése Rendszermodellezés imsc gyakorlat Budapesti Műszaki és Gazdaságtudományi Egyetem Hibatűrő Rendszerek Kutatócsoport Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika
RészletesebbenSzoftverminőségbiztosítás
NGB_IN003_1 SZE 2014-15/2 (7) Szoftverminőségbiztosítás Szoftvertesztelési folyamat Szoftverek és környezet Nem egyforma a szoftverek használatához kapcsolódó kockázat Különböző kockázati szintek -> eltérő
RészletesebbenOO rendszerek jellemzői
OO rendszerek jellemzői Problémák forrása lehet teszteléskor: Problémák feldarabolása. Adatrejtés. Az OO rendszerek nagyszámú, egymással aktívan kapcsolatban levő, együttműködő komponensekből állnak. A
RészletesebbenMiskolci Egyetem Alkalmazott Informatikai Intézeti Tanszék A minőségbiztosítás informatikája. Készítette: Urbán Norbert
Miskolci Egyetem Alkalmazott Informatikai Intézeti Tanszék A minőségbiztosítás informatikája Készítette: Urbán Norbert Szoftver-minőség A szoftver egy termelő-folyamat végterméke, A minőség azt jelenti,
RészletesebbenSzoftvermérés:hogyan lehet a szoftvertermék vagy a szoftverfolyamat valamely jellemzőjéből numerikus értéket előállítani.
Szoftvermérés:hogyan lehet a szoftvertermék vagy a szoftverfolyamat valamely jellemzőjéből numerikus értéket előállítani. az értékeket összegyűjtik, tárolják egymással és az egész szervezetre alkalmazott
RészletesebbenTeszttervezés. Majzik István, Micskei Zoltán. Integrációs és ellenőrzési technikák (VIMIA04) Méréstechnika és Információs Rendszerek Tanszék
Integrációs és ellenőrzési technikák (VIMIA04) Teszttervezés Majzik István, Micskei Zoltán Méréstechnika és Információs Rendszerek Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és
RészletesebbenS01-7 Komponens alapú szoftverfejlesztés 1
S01-7 Komponens alapú szoftverfejlesztés 1 1. A szoftverfejlesztési modell fogalma. 2. A komponens és komponens modell fogalma. 3. UML kompozíciós diagram fogalma. 4. A szoftverarchitektúrák fogalma, összetevői.
RészletesebbenTeljesítmény Mérés. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) Teljesítmény Mérés / 20
Teljesítmény Mérés Tóth Zsolt Miskolci Egyetem 2013 Tóth Zsolt (Miskolci Egyetem) Teljesítmény Mérés 2013 1 / 20 Tartalomjegyzék 1 Bevezetés 2 Visual Studio Kód metrikák Performance Explorer Tóth Zsolt
RészletesebbenUML (Unified Modelling Language)
UML (Unified Modelling Language) UML (+ Object Constraint Language) Az objektum- modellezés egy szabványa (OMG) UML A 80-as, 90-es években egyre inkább terjedő objektum-orientált analízis és tervezés (OOA&D)
RészletesebbenSzoftver-technológia II. Modulok és OOP. Irodalom
Modulok és OOP Irodalom Steven R. Schach: Object Oriented & Classical Software Engineering, McGRAW-HILL, 6th edition, 2005, chapter 7. 2 Modulok és objektumok Modulok Lexikálisan folytonos utasítás sorozatok,
RészletesebbenSzoftverminőségbiztosítás
NGB_IN003_1 SZE 2014-15/2 (13) Szoftverminőségbiztosítás Szoftverminőség és formális módszerek Formális módszerek Formális módszer formalizált módszer(tan) Formális eljárások alkalmazása a fejlesztésben
RészletesebbenA programozás alapjai előadás. Amiről szólesz: A tárgy címe: A programozás alapjai
A programozás alapjai 1 1. előadás Híradástechnikai Tanszék Amiről szólesz: A tárgy címe: A programozás alapjai A számítógép részegységei, alacsony- és magasszintű programnyelvek, az imperatív programozási
RészletesebbenStruktúra alapú teszttervezési módszerek
Szoftver- és rendszerellenőrzés (VIMIMA01) Struktúra alapú teszttervezési módszerek Majzik István, Micskei Zoltán http://www.inf.mit.bme.hu/ 1 Teszttervezés módszerei I. Specifikáció alapú A rendszer mint
RészletesebbenSzoftver-technológia II. Szoftver újrafelhasználás. (Software reuse) Irodalom
Szoftver újrafelhasználás (Software reuse) Irodalom Ian Sommerville: Software Engineering, 7th e. chapter 18. Roger S. Pressman: Software Engineering, 5th e. chapter 27. 2 Szoftver újrafelhasználás Szoftver
RészletesebbenAlgoritmizálás és adatmodellezés tanítása 1. előadás
Algoritmizálás és adatmodellezés tanítása 1. előadás Algoritmus-leíró eszközök Folyamatábra Irányított gráf, amely csomópontokból és őket összekötő élekből áll, egyetlen induló és befejező éle van, az
RészletesebbenKompetens szoftvertesztelés a gyakorlatban II. zárthelyi dolgozat
Név:...................................... Neptunkód:................... Kompetens szoftvertesztelés a gyakorlatban II. zárthelyi dolgozat 2015. április 22. (szerda) Kitöltési útmutató A dolgozat kitöltéséhez
RészletesebbenKomponens alapú fejlesztés
Komponens alapú fejlesztés Szoftver újrafelhasználás Szoftver fejlesztésekor korábbi fejlesztésekkor létrehozott kód felhasználása architektúra felhasználása tudás felhasználása Nem azonos a portolással
RészletesebbenSzoftverminőségbiztosítás
NGB_IN003_1 SZE 2014-15/2 (11) Szoftverminőségbiztosítás Tesztautomatizálás A tesztelés kivitelezése Tesztelési feladatok Detektálatlan maradék hibák számának csökkentése hatásosan és hatékonyan megfelelő
RészletesebbenUnit Teszt. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) Unit Teszt / 22
Unit Teszt Tóth Zsolt Miskolci Egyetem 2013 Tóth Zsolt (Miskolci Egyetem) Unit Teszt 2013 1 / 22 Tartalomjegyzék 1 Bevezetés 2 Unit Teszt 3 Példa Tóth Zsolt (Miskolci Egyetem) Unit Teszt 2013 2 / 22 Szoftvertesztelés
RészletesebbenModell alapú tesztelés mobil környezetben
Modell alapú tesztelés mobil környezetben Micskei Zoltán Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék A terület behatárolása Testing is an activity performed
RészletesebbenSzoftver modul/unit tesztelés
Szoftver modul/unit tesztelés Majzik István Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék http://www.mit.bme.hu/ 1 Szoftvermodul tesztelés Szoftvermodultesztelés
RészletesebbenStatikus technikák: A szoftver átvizsgálása. Statikus technikák: A szoftver átvizsgálása 2011.04.25.
Dr. Mileff Péter A V & V tervezési folyamatoknak egyensúlyt kell kialakítani a verifikáció és a validációstatikus és dinamikus technikái között. 1 2 Statikus technikák: A szoftver átvizsgálása A szisztematikus
RészletesebbenA szoftver-folyamat. Szoftver életciklus modellek. Szoftver-technológia I. Irodalom
A szoftver-folyamat Szoftver életciklus modellek Irodalom Ian Sommerville: Software Engineering, 7th e. chapter 4. Roger S. Pressman: Software Engineering, 5th e. chapter 2. 2 A szoftver-technológia aspektusai
Részletesebbenködös határ (félreértés, hiba)
probléma formálisan specifikált: valós világ (domain) (hibás eredmény) ködös határ (félreértés, hiba) formális világ (megoldás) A szoftver fejlesztőnek meg kell értenie a felhasználó problémáját. A specifikáció
RészletesebbenNév: Neptun kód: Pontszám:
Név: Neptun kód: Pontszám: 1. Melyek a szoftver minőségi mutatói? Fejlesztési idő, architektúra, programozási paradigma. Fejlesztőcsapat összetétele, projekt mérföldkövek, fejlesztési modell. Karbantarthatóság,
RészletesebbenBánsághi Anna 2014 Bánsághi Anna 1 of 68
IMPERATÍV PROGRAMOZÁS Bánsághi Anna anna.bansaghi@mamikon.net 3. ELŐADÁS - PROGRAMOZÁSI TÉTELEK 2014 Bánsághi Anna 1 of 68 TEMATIKA I. ALAPFOGALMAK, TUDOMÁNYTÖRTÉNET II. IMPERATÍV PROGRAMOZÁS Imperatív
RészletesebbenA szoftver tesztelés célja
Szoftver tesztelés Bevezetés 2 A szoftver tesztelés célja! Szoftver-min!ség biztosítása, javítása! Szoftver hibák lokalizálása! V & V támogatása! verifikáció! fázis transzformációs lépései helyesek! követelményeknek
RészletesebbenS z á m í t ó g é p e s a l a p i s m e r e t e k
S z á m í t ó g é p e s a l a p i s m e r e t e k 7. előadás Ami eddig volt Számítógépek architektúrája Alapvető alkotóelemek Hardver elemek Szoftver Gépi kódtól az operációs rendszerig Unix alapok Ami
RészletesebbenSpecifikáció alapú teszttervezési módszerek
Szoftverellenőrzési technikák Specifikáció alapú teszttervezési módszerek Majzik István, Micskei Zoltán http://www.inf.mit.bme.hu/ 1 Klasszikus tesztelési feladat A tesztelendő program beolvas 3 egész
RészletesebbenSpecifikáció alapú teszttervezési módszerek
Szoftverellenőrzési technikák Specifikáció alapú teszttervezési módszerek Majzik István, Micskei Zoltán http://www.inf.mit.bme.hu/ 1 Klasszikus tesztelési feladat A tesztelendő program beolvas 3 egész
RészletesebbenAWK programozás, minták, vezérlési szerkezetek
10 AWK programozás, minták, vezérlési szerkezetek AWK futtatási módok AWK parancs, közvetlen programkódmegadás: awk 'PROGRAMKÓD' FILE példa: ls -l awk '{print $1, $5}' a programkód helyére minden indentálás
RészletesebbenProgramozás C nyelven 5. ELŐADÁS. Sapientia EMTE
Programozás C nyelven. ELŐADÁS Sapientia EMTE 201-16 1 while vs. for int szam, s; cin >> szam; s = 0; while ( szam > 0 ){ s += szam%10; szam /= 10; cout szam;
RészletesebbenProgramtervezés. Dr. Iványi Péter
Programtervezés Dr. Iványi Péter 1 A programozás lépései 2 Feladat meghatározás Feladat kiírás Mik az input adatok A megoldáshoz szükséges idő és költség Gyorsan, jót, olcsón 3 Feladat megfogalmazása Egyértelmű
RészletesebbenRendszer-modellezés, modellezési technikák
Rendszer-modellezés, modellezési technikák System engineering and modelling Irodalom Ian Sommerville: Software Engineering, 7th e. chapter 8. Roger S. Pressman: Software Engineering, 5th e. chapter 10,
RészletesebbenProgramozási nyelvek II. JAVA
Programozási nyelvek II. JAVA 10. gyakorlat 2017. november 20-24. Szoftver minőségbiztosítás (ismétlés) Adott: Specifikáció (követelmények halmaza) Cél: A követelményeket teljesítő ("helyes") program Megközelítések:
RészletesebbenSzoftver-technológia II. Architektúrák dokumentálása UML-lel. Irodalom. Szoftver-technológia II.
Architektúrák dokumentálása UML-lel Irodalom L. Bass, P. Clements, R. Kazman: Software Architecture in Practice, Addison-Wesley, 2003 H. Störrle: UML 2, Panem, 2007 2 Szoftver architektúra (emlékeztet!)
RészletesebbenPROGRAMOZÁS tantárgy. Gregorics Tibor egyetemi docens ELTE Informatikai Kar
PROGRAMOZÁS tantárgy Gregorics Tibor egyetemi docens ELTE Informatikai Kar Követelmények A,C,E szakirány B szakirány Előfeltétel Prog. alapismeret Prog. alapismeret Diszkrét matematika I. Óraszám 2 ea
RészletesebbenFormális módszerek GM_IN003_1 Bevezetés
Formális módszerek GM_IN003_1 Formális módszerek Formális módszer! formalizált módszer(tan) Formális eljárások alkalmazása a fejlesztésben nincs olyan formális eljárás, ami egy komplex rendszer minden
RészletesebbenRendszer-modellezés, modellezési technikák
Rendszer-modellezés, modellezési technikák System engineering and modelling Irodalom Ian Sommerville: Software Engineering, 7th e. chapter 8. Roger S. Pressman: Software Engineering, 5th e. chapter 10,
RészletesebbenA C# programozási nyelv alapjai
A C# programozási nyelv alapjai Tisztán objektum-orientált Kis- és nagybetűket megkülönbözteti Ötvözi a C++, Delphi, Java programozási nyelvek pozitívumait.net futtatókörnyezet Visual Studio fejlesztőkörnyezet
RészletesebbenProgramozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós március 3. Széchenyi István Egyetem, Gy r
Programozás (GKxB_INTM021) Széchenyi István Egyetem, Gy r 2018. március 3. Függvények Mi az a függvény (function)? Programkód egy konkrét, azonosítható, paraméterezhet, újrahasznosítható blokkja Miért
RészletesebbenJava II. I A Java programozási nyelv alapelemei
Java2 / 1 Java II. I A Java programozási nyelv alapelemei Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2009. 02. 09. Java II.: Alapelemek JAVA2 / 1 A Java formalizmusa A C, illetve
RészletesebbenA félév során előkerülő témakörök
A félév során előkerülő témakörök rekurzív algoritmusok rendező algoritmusok alapvető adattípusok, adatszerkezetek, és kapcsolódó algoritmusok dinamikus programozás mohó algoritmusok gráf algoritmusok
RészletesebbenProgramozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós február 18. Széchenyi István Egyetem, Gy r
Programozás (GKxB_INTM021) Széchenyi István Egyetem, Gy r 2018. február 18. Minimum és maximumkeresés u s i n g n a m e s p a c e s t d ; i n t main ( ) { c o u t
RészletesebbenELTE, Informatikai Kar december 12.
1. Mi az objektum? Egy olyan változó, vagy konstans, amely a program tetszőleges pontján felhasználható. Egy olyan típus, amelyet a programozó valósít meg korábbi objektumokra alapozva. Egy olyan változó,
RészletesebbenBonyolultsági. mértékek erlang programokhoz. Király Roland
Bonyolultsági mértékek erlang programokhoz Király Roland A kutatás a TÁMOP 4.2.4.A/2-11-1-2012-0001 azonosító számú Nemzeti Kiválóság Program Hazai hallgatói, illetve kutatói személyi támogatást biztosító
RészletesebbenInformációtartalom vázlata
1. Az Ön cégétől árajánlatot kértek egy üzleti portál fejlesztésére, amelynek célja egy online áruház kialakítása. Az árajánlatkérés megválaszolásához munkaértekezletet tartanak, ahol Önnek egy vázlatos
RészletesebbenVerifikáció és validáció Általános bevezető
Verifikáció és validáció Általános bevezető Általános Verifikáció és validáció verification and validation - V&V: ellenőrző és elemző folyamatok amelyek biztosítják, hogy a szoftver megfelel a specifikációjának
RészletesebbenJava II. I A Java programozási nyelv alapelemei
Java II. I A Java programozási nyelv alapelemei Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2008. 02. 19. Java II.: Alapelemek JAVA2 / 1 A Java formalizmusa A C, illetve az annak
RészletesebbenModell alapú tesztelés
Modell alapú tesztelés Majzik István és Micskei Zoltán Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék http://www.inf.mit.bme.hu/ 1 Motiváció Tartalomjegyzék
Részletesebben9. előadás. Programozás-elmélet. Programozási tételek Elemi prog. Sorozatszámítás Eldöntés Kiválasztás Lin. keresés Megszámolás Maximum.
Programozási tételek Programozási feladatok megoldásakor a top-down (strukturált) programtervezés esetén három vezérlési szerkezetet használunk: - szekvencia - elágazás - ciklus Eddig megismertük az alábbi
RészletesebbenAWK programozás, minták, vezérlési szerkezetek
10 AWK programozás, minták, vezérlési szerkezetek AWK adatvezérelt szkriptnyelv text processing, adat kiterjesztés, tagolt adatok automatizált soronkénti feldolgozása a forrásállományt soronként beolvassa
Részletesebben2011.11.29. JUnit. JUnit használata. IDE támogatás. Parancssori használat. Teszt készítése. Teszt készítése
Tartalom Integrált fejlesztés Java platformon JUnit JUnit használata Tesztelési technikák Demo 2 A specifikáció alapján teszteljük a program egyes részeit, klasszikus V-modell szerint Minden olyan metódust,
RészletesebbenV & V Feladatok. V & V Feladatok
V & V Feladatok 2008.01.08 2. Feladat tartozik! A relációjel fordított. Hibás bemenetekre nem teszteltünk. Figyelmen kívül hagytuk az objektum konstruálás időigényét. A pointer értéke null. A program lefut,
RészletesebbenINFORMATIKA javítókulcs 2016
INFORMATIKA javítókulcs 2016 ELMÉLETI TÉTEL: Járd körbe a tömb fogalmát (Pascal vagy C/C++): definíció, egy-, két-, több-dimenziós tömbök, kezdőértékadás definíciókor, tömb típusú paraméterek átadása alprogramoknak.
RészletesebbenIntelligens eszközök fejlesztése az ipari automatizálásban Evosoft Hungary kft., Evosoft Hungary Kft.
Intelligens eszközök fejlesztése az ipari automatizálásban Evosoft Hungary kft., Evosoft Hungary Kft. Intelligens eszközök fejlesztése az ipari automatizálásban Evosoft Hungary kft., Evosoft Hungary Kft.
RészletesebbenFormális módszerek GM_IN003_1 Program verifikálás, formalizmusok
Formális módszerek GM_IN003_1 Program verifikálás, formalizmusok Program verifikálás Konkurens programozási megoldások terjedése -> verifikálás szükséges, (nehéz) logika Legszélesebb körben alkalmazott
RészletesebbenSzoftver követelmények meghatározása
Szoftver meghatározása Requirements engineering (analysis) Irodalom Ian Sommerville: Software Engineering, 7th e. chapter 6-7. Roger S. Pressman: Software Engineering, 5th e. chapter 11. 2 Követelménymeghatározás
RészletesebbenSzoftver karbantartási lépések ellenőrzése
Szoftverellenőrzési technikák (vimim148) Szoftver karbantartási lépések ellenőrzése Majzik István Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék http://www.inf.mit.bme.hu/
RészletesebbenSzoftvertechnológia ellenőrző kérdések 2005
Szoftvertechnológia ellenőrző kérdések 2005 Mi a szoftver, milyen részekből áll és milyen típusait különböztetjük meg? Mik a szoftverfejlesztés általános lépései? Mik a szoftvergyártás általános modelljei?
RészletesebbenA tesztelés szükségessége
A tesztelés szükségessége Veszélyek megjelenése Hardver téren az integráltsági fok növekedése Szoftver téren a milliós nagyságrendben lévő utasításszám A rendszerek teljesítményének növekedésével együtt
RészletesebbenProgramfejlesztési Modellek
Programfejlesztési Modellek Programfejlesztési fázisok: Követelmények leírása (megvalósíthatósági tanulmány, funkcionális specifikáció) Specifikáció elkészítése Tervezés (vázlatos és finom) Implementáció
RészletesebbenSzkriptnyelvek. 1. UNIX shell
Szkriptnyelvek 1. UNIX shell Szkriptek futtatása Parancsértelmez ő shell script neve paraméterek shell script neve paraméterek Ebben az esetben a szkript tartalmazza a parancsértelmezőt: #!/bin/bash Szkriptek
RészletesebbenAlgoritmusok helyességének bizonyítása. A Floyd-módszer
Algoritmusok helyességének bizonyítása A Floyd-módszer Algoritmusok végrehajtása Egy A algoritmus esetében a változókat három változótípusról beszélhetünk, melyeket az X, Y és Z vektorokba csoportosítjuk
Részletesebben5. előadás. Programozás-elmélet. Programozás-elmélet 5. előadás
Elemi programok Definíció Az S A A program elemi, ha a A : S(a) { a, a, a, a,..., a, b b a}. A definíció alapján könnyen látható, hogy egy elemi program tényleg program. Speciális elemi programok a kövekezők:
RészletesebbenObjektum Orientált Szoftverfejlesztés (jegyzet)
Objektum Orientált Szoftverfejlesztés (jegyzet) 1. Kialakulás Kísérletek a szoftverkrízisből való kilábalásra: 1.1 Strukturált programozás Ötlet (E. W. Dijkstra): 1. Elkészítendő programot elgondolhatjuk
RészletesebbenProgramozás alapjai C nyelv 4. gyakorlat. Mit tudunk már? Feltételes operátor (?:) Típus fogalma char, int, float, double
Programozás alapjai C nyelv 4. gyakorlat Szeberényi Imre BME IIT Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I. 2005.10.10.. -1- Mit tudunk már? Típus fogalma char, int, float,
RészletesebbenKiterjesztések sek szemantikája
Kiterjesztések sek szemantikája Példa D Integer = {..., -1,0,1,... }; D Boolean = { true, false } D T1... T n T = D T 1... D Tn D T Az összes függvf ggvény halmaza, amelyek a D T1,..., D Tn halmazokból
RészletesebbenAlapok. tisztán funkcionális nyelv, minden függvény (a konstansok is) nincsenek hagyományos változók, az első értékadás után nem módosíthatók
Haskell 1. Alapok tisztán funkcionális nyelv, minden függvény (a konstansok is) nincsenek hagyományos változók, az első értékadás után nem módosíthatók elég jól elkerülhetők így a mellékhatások könnyebben
RészletesebbenProgramozás alapjai. (GKxB_INTM023) Dr. Hatwágner F. Miklós október 11. Széchenyi István Egyetem, Gy r
Programozás alapjai (GKxB_INTM023) Széchenyi István Egyetem, Gy r 2018. október 11. Függvények Mi az a függvény (function)? Programkód egy konkrét, azonosítható, paraméterezhet, újrahasznosítható blokkja
RészletesebbenParametrikus tervezés
2012.03.31. Statikus modell Dinamikus modell Parametrikus tervezés Módosítások a tervezés folyamán Konstrukciós variánsok (termékcsaládok) Parametrikus Modell Parametrikus tervezés Paraméterek (változók
RészletesebbenModell alapú tesztelés
Modell alapú tesztelés Majzik István BME Méréstechnika és Információs Rendszerek Tanszék Motiváció Tartalomjegyzék Modellek (informális) szerepe a tesztelésben Modell alapú tesztgenerálás Tesztgenerálás
RészletesebbenProgramrendszerek tanúsítása szoftverminőség mérése
SZEGEDI TUDOMÁNYEGYETEM Programrendszerek tanúsítása szoftverminőség mérése Dr. Gyimóthy Tibor Dr. Ferenc Rudolf Szoftverminőség biztosítás Fő cél: az üzemelő IT rendszerekben csökkenteni a hibák számát
RészletesebbenVáltozók. Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai):
Python Változók Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai): Név Érték Típus Memóriacím A változó értéke (esetleg más attribútuma is) a program futása alatt
RészletesebbenKomputeralgebra Rendszerek
Komputeralgebra Rendszerek Programozás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék 2014. február 23. TARTALOMJEGYZÉK 1 of 28 TARTALOMJEGYZÉK I 1 TARTALOMJEGYZÉK 2 Értékadás MAPLE -ben SAGE -ben 3
RészletesebbenIntegrációs mellékhatások és gyógymódok a felhőben. Géczy Viktor Üzletfejlesztési igazgató
Integrációs mellékhatások és gyógymódok a felhőben Géczy Viktor Üzletfejlesztési igazgató Middleware projektek sikertelenségeihez vezethet Integrációs (interfész) tesztek HIÁNYA Tesztadatok? Emulátorok?
RészletesebbenAdminisztrációs feladatok Strukturált programok A C programnyelv elemei
Strukturált C-Strukturált Egyéb elemek Strukturált C-Strukturált Egyéb elemek Adminisztrációs feladatok Strukturált programok A C programnyelv elemei A programozás alapjai. álózati Rendszerek és Szolgáltatások
RészletesebbenSzoftver architektúra, Architektúrális tervezés
Szoftver architektúra, Architektúrális tervezés Irodalom Ian Sommerville: Software Engineering, 7th e. chapter 11. Roger S. Pressman: Software Engineering, 5th e. chapter 14. Bass, Clements, Kazman: Software
RészletesebbenIRÁNYÍTÓ RENDSZER IRÁNYÍTANDÓ FOLYAMAT. Biztonsági funkciók Biztonsági integritás. Normál működés. Hibák elleni védettség Saját (belső) biztonság
Biztonsági funkciók Biztonsági integritás Teljes funkcionalitás Biztonsági funkciók Irányító funkciók Gyakoriság Normál működés Kockázat osztályozás Veszélyelemzés Kockázatcsökkentés Súlyosság Belső kockázat
RészletesebbenC# Nyelvi Elemei. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) C# Nyelvi Elemei / 18
C# Nyelvi Elemei Tóth Zsolt Miskolci Egyetem 2013 Tóth Zsolt (Miskolci Egyetem) C# Nyelvi Elemei 2013 1 / 18 Tartalomjegyzék 1 Object 2 Típusok 3 String 4 RegEx Tóth Zsolt (Miskolci Egyetem) C# Nyelvi
RészletesebbenA szoftverfejlesztés eszközei
A szoftverfejlesztés eszközei Fejleszt! eszközök Segédeszközök (szoftverek) programok és fejlesztési dokumentáció írásához elemzéséhez teszteléséhez karbantartásához 2 Történet (hw) Lyukkártya válogató
RészletesebbenSzoftverminőségbiztosítás
NGB_IN003_1 SZE 2014-15/2 (2) Szoftverminőségbiztosítás A szoftverminőségbiztosítási rendszer A szoftver-minőségbiztosítási rendszer összetevői Szoftver minőségi alapkérdések Hogyan hasznosítsuk a know-how-t
RészletesebbenOktatási segédlet 2014
Oktatási segédlet 2014 A kutatás a TÁMOP 4.2.4.A/2-11-1-2012- 0001 azonosító számú Nemzeti Kiválóság Program Hazai hallgatói, illetve kutatói személyi támogatást biztosító rendszer kidolgozása és működtetése
Részletesebben5. gyakorlat Modellek ellenőrzése és tesztelése Megoldások
5. gyakorlat Modellek ellenőrzése és tesztelése Megoldások Figyelem: Jelen anyag belső használatra készült megoldási útmutató, melyet a ZH felkészülés segítése érdekében publikáltunk. A feladatok részletesebb
RészletesebbenEgy Erlang refaktor lépés: Függvényparaméterek összevonása tuple-ba
Egy Erlang refaktor lépés: Függvényparaméterek összevonása tuple-ba Témavezető: Horváth Zoltán és Simon Thompson OTDK 2007, Miskolc Egy Erlang refaktor lépés: Függvényparaméterek összevonása tuple-ba OTDK
RészletesebbenMŰSZAKI TESZTTERVEZÉSI TECHNIKÁK STRUKTÚRA ALAPÚ, VAGY FEHÉRDOBOZ TECHNIKÁK TAPASZTALAT ALAPÚ TECHNIKÁK
MŰSZAKI TESZTTERVEZÉSI TECHNIKÁK STRUKTÚRA ALAPÚ, VAGY FEHÉRDOBOZ TECHNIKÁK TAPASZTALAT ALAPÚ TECHNIKÁK MUNKAERŐ-PIACI IGÉNYEKNEK MEGFELELŐ, GYAKORLATORIENTÁLT KÉPZÉSEK, SZOLGÁLTATÁSOK A DEBRECENI EGYETEMEN
Részletesebben