Sobes.tech
Middle

Ako sa tvoria testovacie súbory?

sobes.tech AI

Odpoveď od AI

Testovacie súbory (test suites) sa vytvárajú na základe analýzy požiadaviek na produkt, určenia oblasti testovania a výberu vhodných testovacích techník. Proces zahŕňa nasledujúce kroky:

  1. Analýza požiadaviek a špecifikácií: Identifikácia funkčných a nefunkčných požiadaviek, ktoré je potrebné overiť.
  2. Určenie oblasti testovania: Definovanie konkrétnych funkcií, modulov, scenárov použitia alebo oblastí systému, ktoré budú testované.
  3. Výber techník návrhu testov: Použitie rôznych techník, ako sú:
    • Ekvivalentné delenie (Equivalence Partitioning)
    • Analýza hraničných hodnôt (Boundary Value Analysis)
    • Tabuľky rozhodnutí (Decision Tables)
    • Stavové prechody (State Transition Testing)
    • Testovanie prípadov použitia (Use Case Testing)
    • Párové testovanie (Pairwise Testing)
  4. Vývoj testovacích prípadov: Vytvorenie podrobných popisov krokov, dát, očakávaných výsledkov a podmienok pre každý test. Testovací prípad by mal byť atómový a overovať jednu konkrétnu funkčnosť alebo aspekt.
  5. Skupinovanie testovacích prípadov: Zoskupenie súvisiacich testovacích prípadov do logických skupín na základe funkčnosti, modulu, typu testovania (napríklad regresné, integračné) alebo priority. Každá takáto skupina tvorí testovací súbor.
  6. Prioritizácia testovacích súborov: Určenie poradia vykonávania testovacích súborov na základe kritickosti testovanej funkčnosti, frekvencie použitia, rizík a ďalších faktorov.
  7. Štruktúrovanie testovacích súborov: Organizácia testovacích súborov do hierarchickej štruktúry alebo podľa kategórií pre jednoduchšie riadenie a vykonávanie.

Príklad štruktúry testovacieho súboru v rámci automatizačného rámca:

# súbor: test_suite_user_management.py

import unittest
from test_cases.test_user_creation import TestUserCreation
from test_cases.test_user_deletion import TestUserDeletion

# Skupinovanie testovacích prípadov do testovacieho súboru
def suite():
    suite = unittest.TestSuite()
    suite.addTest(unittest.makeSuite(TestUserCreation)) # Pridanie triedy testov pre vytvorenie používateľa
    suite.addTest(unittest.makeSuite(TestUserDeletion)) # Pridanie triedy testov pre odstránenie používateľa
    return suite

# Príklad triedy testu
class TestUserCreation(unittest.TestCase):
    def test_successful_user_creation(self):
        # Kroky pre úspešné vytvorenie používateľa
        pass

    def test_user_creation_with_existing_email(self):
        # Kroky pre vytvorenie používateľa s existujúcim emailom
        pass

class TestUserDeletion(unittest.TestCase):
     def test_successful_user_deletion(self):
        # Kroky pre úspešné odstránenie používateľa
        pass

Testovacie súbory môžu byť organizované podľa rôznych kritérií:

Kritérium Príklady testovacích súborov
Funkcionalita User Management Suite, Product Catalog Suite, Checkout Suite
Typ testovania Regression Suite, Smoke Suite, Integration Suite
Priorita High Priority Suite, Critical Path Suite
Modul/Komponenta Testy databázového modulu, Testy UI komponentov