Table of Contents

GEIAL31H-B2, GEIAL31H-BL2 Szoftvertesztelés

Mérnökinformatikus alapszak (BSc), Programtervező informatikus alapszak (BSc)

Tantárgy feladata és célja:

A tárgy célja a szoftvertesztelés főbb módszereinek és technikájának a bemutatása. A tesztelési szintek megismerése. Test First és Test Driven Development módszerek ismertetése. A különböző szoftvertesztelési technikák gyakorlatban történő megismerése.

Tárgy tematikus leírása:

Szoftver‐minőségi kritériumok áttekintése és minőségbiztosítási folyamat megvalósulásának vizsgálata szoftverprojektekben. Tesztelési alapelvek. Funkcionális tesztelés, Unit, Integrációs, Alrendszer és Rendszer tesztek ismertetése. JUnit keretrendszer ismertetése. Agilis fejlesztési módszertanok átfogó ismertetése, Test First Development fejlesztési módszer empirikus vizsgálata

Ütemterv

# Hét Előadás Gyakorlat
1. hét Követelmények ismertetése Fejlesztői környezet kialakítása, hiba felismerése kódban
2. hét Szoftver hibák és forrásaik
3. hét Szoftver minőség jellemzők TDD QUnittal,
4. hét Tesztelés alapjai. Tesztelés céljai, tesztelés és hibakezelés, teszttevékenységek, munkatermékek
5. hét Tesztelés a sw életciklusában Junit5 alapok, Tov'bbi Junit5 gyakorlatok
6. hét Statikus tesztelés, Teszttechnikák TDD és BDD, UI tesztelés
7. hét Teszt támogató eszközök, API tesztelés, Tesztmenedzsment Mockito / Egyéni feladatok, UI teszt alapok, Selenium
8. hét Oktatási szünet .
9. hét ZH, Összefoglalás, pótlások Feladat beadás, ismétlés
10. hét
11. hét
12. hét
13. hét
14. hét

Aláírás megszerzése:

Az előadások legalább 60%-án való részvétel, a gyakorlatok legalább 70%-án való részvétel

valamint

Nappali tagozaton az aláírás feltétele a zárthelyi dolgozaton legalább elégséges = 40% eredmény elérése + a programozási feladatok mindegyikének legalább megfelelt minősítésű beadása

Levelező tagozaton az aláírás feltétele a zárthelyi dolgozaton legalább elégséges = 40% eredmény elérése + a programozási feladatok mindegyikének legalább megfelelt minősítésű beadása

Pótlások: az utolsó tanulmányi héten

Számonkérés módja:

Kollokvium. A vizsgaidőszakban írásbeli + szóbeli vizsga

Gyakorló feladatok

A 2025. évben az alábbi feladatok szerepelnek

1. Készítsd egy github repozitóriumot.

Használd a következő utasításokat:

Oszd meg a github repozitóriumodat. Ellenőrizd a megosztást.

2. JS - Qunit

A szállítási díj

1. Értsd meg a specifikációt.

2. Készíts legalább 10 tesztesetet.

3. Minden tesztesethez add meg az elvárt eredményt.

4. Futtasd le kézzel a függvényt.

5. Dokumentáld a megtalált hibákat.

6. Minden hibához adj reprodukáló tesztesetet.

7. A munkát commitold a saját branchedre.

function calculateShippingCost(orderValue, weight, country, express) {
    let shippingCost = 0;
    // Free shipping in Hungary for orders above 20,000 HUF
    if (country === "HU" && orderValue >= 20000) {
        return 0;
    }
    // Base shipping cost by weight
    if (weight < 5) {
        shippingCost = 1500;
    } else if (weight > 5 && weight < 20) {
        shippingCost = 2500;
    } else {
        shippingCost = 5000;
    }
    // International shipping
    if (country !== "HU") {
        shippingCost = shippingCost * 2;
    }
    // Express delivery surcharge
    if (express === true) {
        shippingCost = shippingCost + 50;
    }

    return shippingCost;
}

3.Test Driven development elveket alkalmazva implementálj arab szám - római szám konvertert!

A kódot töltsd fel egy github repozitóriumba!

4. Készíts egy BankAccount osztályt, amely egy egyszerű bankszámlát modellez.

Az osztály tudja a következőket:

deposit(double amount)
withdraw(double amount)
getBalance()

A számla induló egyenlege legyen 0. Követelmények

Teszteld például ezeket az eseteket:

  1. Új számla egyenlege 0.
  2. deposit(1000) után az egyenleg 1000.
  3. Több befizetés helyesen összeadódik.
  4. Befizetés után a withdraw() helyesen csökkenti az egyenleget.
  5. A teljes egyenleg felvehető.
  6. Túl nagy összeg felvétele IllegalArgumentException kivételt dob.
  7. Negatív befizetés kivételt dob.
  8. 0 összegű befizetés kivételt dob.
  9. Negatív pénzfelvétel kivételt dob.
  10. 0 összegű pénzfelvétel kivételt dob.

5. Készíts olyan kódot ami a holdjáróval feltérképezi a bolygót!

Tipp:

Ajánlott irodalom:

2025-10-09-szoftverteszteles_gyakorlat2.pdf

Zárthelyi 2025.11.23.

2025. nov 11

Basic osztályok, unitteszt gyakorlat

Mock gyakorlat

UI tesztelés gyakorlat