Tehnologia UniTESK

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită pe 22 decembrie 2020; verificarea necesită 1 editare .

UniTESK (Unified Testing & Specification ToolKit) este o tehnologie pentru testarea software -ului și hardware -ului bazată pe specificații formale , dezvoltată la Institutul de Programare a Sistemelor al Academiei Ruse de Științe . Tehnologia este o combinație de tehnici bine stabilite care pot fi aplicate în diferite combinații, combinându-se și întărindu-se reciproc. Acest lucru face ca tehnologia să fie flexibilă și personalizabilă pentru procesele de dezvoltare existente în toate etapele ciclului de viață al dezvoltării software, de la colectarea și analizarea cerințelor până la întreținere.

Baza pentru emiterea de verdicte privind corectitudinea comportamentului sistemului testat sunt specificațiile contractuale sub formă de condiții pre- și post- condiții , scrise în extensii ale limbajelor de programare tradiționale precum C , Java și care permit realizarea unui verdictul complet automat. Specificațiile sunt o reprezentare a cerințelor funcționale pentru un sistem. Forma caietului de sarcini și criteriile de acoperire bazate pe acestea asigură trasabilitatea cerințelor .

Folosite cu succes în practică, tehnicile de construire a testelor bazate pe traversarea graficului de stare pot minimiza semnificativ cantitatea de cod de program creat manual , asigurând în același timp diversitatea și masivitatea setului de teste.

Tehnicile de extragere a datelor și criteriile de acoperire bazate pe cerințe permit un control flexibil asupra dimensiunii setului de testare și generarea directă pentru a acoperi cerințele specifice, reducând astfel la minimum timpul de execuție a setului de teste.

Un strat intermediar special disponibil în tehnologie vă permite să personalizați rapid suita de testare pentru diferite implementări cu aceeași funcționalitate.

Toate aceste tehnici oferă testare de înaltă calitate, trasabilitate a cerințelor și un nivel ridicat de reutilizare a componentelor suitei de testare cu un minim de lucru manual și timp acceptabil de execuție a testelor.

Pașii tehnologiei

Definirea părții sistemului testat La acest pas, se determină funcționalitatea testată, adică o parte din capacitățile sistemului în cauză care trebuie testată și interfața testată, adică modul de acces la capabilitățile testate. Definirea și analiza cerințelor pentru sistemul testat Pe baza analizei tuturor datelor de intrare, a comunicării cu clientul, experții și utilizatorii, cerințele pentru sistemul testat sunt identificate și sistematizate. Care sunt prezentate în continuare sub forma unui model formal. Definirea și analiza cerințelor pentru exhaustivitatea testării Sunt evidențiate criteriile de completitudine a testării, care se reflectă în modelul formal. Dezvoltarea testelor Dezvoltarea surselor de date de testare și a modelului de testare în general.
Tehnici de bază .
Enumerarea mulțimilor finite, enumerarea combinațiilor, enumerarea valorilor limită și a celor apropiate acestora, enumerarea valorilor nodale și apropiate, enumerarea structurilor gramaticale folosind generatoare modulare, enumerarea cu filtrare, enumerarea graficelor și secvențelor atribuite.
Automate finite, sisteme de tranziție etichetate, reprezentarea implicită a modelelor de automate, testarea strat cu strat a modelelor complexe. Dezvoltarea adaptoarelor care leagă testele de implementarea testată Depanarea și rularea testelor Analiza rezultatelor testelor

Istoricul creației

Aplicare în practică

Tehnologia a fost aplicată cu succes în multe proiecte. Cel mai interesant:

Suport instrumental


Literatură

Link -uri