Čo je to testovanie súbežnosti?
Testovanie súbežnosti je definované ako testovacia technika na zisťovanie chýb v aplikácii, keď je prihlásených viac používateľov. Inými slovami, sledovanie účinku, zatiaľ čo viacerí používatelia vykonávajú rovnakú akciu súčasne. Obrázok nižšie zobrazuje súbežné testovanie
Súbežné testovanie sa označuje aj ako testovanie pre viacerých používateľov . Testovanie súbežného programu je náročnejšie ako testovanie sekvenčného programu z dôvodu nedeterminizmu a problémov so synchronizáciou.
Prečo testovanie súbežnosti
- Identifikuje účinky prístupu k rovnakým databázovým záznamom, modulom alebo kódu aplikácie súčasne.
- Identifikuje a meria úroveň zablokovania, uzamknutia a použitia kódu s jedným vláknom a obmedzeného prístupu k zdieľaným zdrojom
Výhody súbežného testovania
- Relatívne znižuje množstvo úsilia potrebného na testovanie aplikácie obmedzením rozsahu súbežných interakcií na niekoľko široko používaných dobre otestovaných komponentov.
- Hodnota zapuzdrenia umožňuje analyzovať správanie časti programu bez kontroly celého kódu alebo programu
- Pomáha zvyšovať spoľahlivosť a odolnosť súbežných programov.
Nevýhody súbežného testovania
Nevýhody, s ktorými sa môže stretnúť test pri súbežnom testovaní
- Je potrebné testovať na viacerých platformách
- Vyžaduje intenzívnejšie testy
- Funkcie nevrátia výsledok volajúcemu okamžite, ale namiesto toho ho možno doručiť neskôr prostredníctvom oznámení, blokov, funkcií spätného volania alebo podobných mechanizmov, čo sťažuje testovanie.
- Tok informácií alebo programov sa neodráža v zásobníku hovorov.
- Počet exekučných ciest v systéme môže byť extrémne vysoký, pretože procesy v súbežnom systéme môžu pri vykonávaní interakcie medzi sebou.
- Súbežné programy majú väčší pomer zlyhaní ako sekvenčné
- Ladenie súbežných programov
Zhrnutie:
Technika súbežného testovania alebo testovania súbežnosti sa používa na zistenie chýb v aplikácii, keď je prihlásených viac používateľov.