what is system integration testing
Ce este testarea integrării sistemului?
Testarea integrării sistemului (SIT) este testarea generală a întregului sistem care este compusă din mai multe subsisteme. Obiectivul principal al SIT este de a se asigura că toate dependențele modulelor software funcționează corect și că integritatea datelor este păstrată între module distincte ale întregului sistem.
SUT (System Under Test) poate fi alcătuit din hardware, bază de date, software, o combinație de hardware și software sau un sistem care necesită interacțiune umană (HITL - Human in the Loop Testing).
Din contextul ingineriei software și al testării software-ului, SIT poate fi considerat un proces de testare care verifică co-apariția sistemului software cu alții.
SIT are o condiție prealabilă în care mai multe sisteme integrate subiacente au trecut deja și au trecut testarea sistemului. SIT testează apoi interacțiunile necesare între aceste sisteme în ansamblu. Livrabilele SIT sunt transmise către UAT (Testarea acceptării utilizatorului).
Ce veți învăța:
- Necesitatea testului de integrare a sistemului
- Granularitatea SIT
- Cum se efectuează testarea integrării sistemului?
- Testarea sistemului Vs Testarea integrării sistemului
- Testarea integrării sistemului împotriva testării acceptării utilizatorului
- SIT Exemplu
- Tehnici SIT
- Concluzie
- Lectură recomandată
Necesitatea testului de integrare a sistemului
Funcția principală a SIT este de a testa dependențele între diferite componente ale sistemului și, prin urmare, testarea de regresie este o parte importantă a SIT.
Pentru proiecte de colaborare, SIT face parte din STLC (Software Testing lifecycle). În general, o rundă pre-SIT este efectuată de furnizorul de software înainte ca clientul să își ruleze propriile cazuri de testare SIT.
În majoritatea organizațiilor care lucrează în proiecte IT care urmează modelul Agile sprint, o rundă de SIT este realizată de echipa QA înainte de fiecare lansare. Defectele găsite în SIT sunt trimise înapoi echipei de dezvoltare și lucrează la remedieri.
Eliberarea MVP (Minimum Viable Product) din sprint merge numai atunci când este trecut prin SIT.
SIT este necesar pentru a expune defectele care apar atunci când interacțiunea are loc între subsistemele integrate.
Există mai multe componente utilizate în sistem și nu pot fi testate individual. Chiar dacă unitatea este testată individual, există, de asemenea, posibilitatea de a eșua atunci când este combinată în sistem, deoarece există multe probleme care apar atunci când subsistemele interacționează între ele.
Astfel, SIT este foarte solicitat să expună și să remedieze eșecurile înainte de a implementa sistemul la sfârșitul utilizatorului. SIT detectează defectele într-un stadiu incipient și astfel economisește timpul și costurile de remediere ulterioară. De asemenea, vă ajută să obțineți feedback mai devreme cu privire la acceptabilitatea modulului.
Granularitatea SIT
SIT poate fi efectuat la trei niveluri diferite de granularitate:
(i) Testarea intra-sistem: Acesta este un nivel scăzut de testare a integrării care vizează fuzionarea modulelor împreună pentru a construi un sistem unificat.
(ii) Testarea între sisteme: Acesta este un test de nivel înalt care necesită interfață între sisteme testate independent.
(iii) Testare pereche: Aici, doar două subsisteme interconectate din întregul sistem sunt testate odată. Aceasta vizează asigurarea faptului că cele două subsisteme pot funcționa bine atunci când sunt combinate împreună, presupunând că celelalte subsisteme funcționează deja bine.
Cum se efectuează testarea integrării sistemului?
Cel mai simplu mod de a efectua SIT este prin metoda bazată pe date. Necesită utilizarea minimă a instrumentelor de testare software.
ce este qa și qc în testarea software-ului
În primul rând, schimbul de date (importul de date și exportul de date) se întâmplă între componentele sistemului și apoi se examinează comportamentul fiecărui câmp de date în cadrul stratului individual.
Odată ce software-ul este integrat, există trei stări principale ale fluxului de date, după cum se menționează mai jos:
# 1) Starea datelor în cadrul stratului de integrare
Stratul de integrare acționează ca o interfață între importul și exportul de date. Efectuarea SIT la acest strat necesită unele cunoștințe de bază despre anumite tehnologii cum ar fi schema (XSD), XML, WSDL, DTD și EDI.
Performanța schimbului de date poate fi examinată la acest strat prin pașii de mai jos:
- Validați proprietățile datelor din acest strat față de BRD / FRD / TRD (Document de cerințe de afaceri / Document de cerințe funcționale / Document de cerințe tehnice).
- Verificați încrucișat solicitarea serviciului web utilizând XSD și WSDL.
- Rulați câteva teste unitare și validați mapările și solicitările de date.
- Examinați jurnalele middleware.
# 2) Starea datelor în stratul Baza de date
Efectuarea SIT la acest strat necesită cunoștințe de bază despre SQL și procedurile stocate.
Performanța schimbului de date la acest strat poate fi examinată prin pașii de mai jos:
- Verificați dacă toate datele din stratul de integrare au ajuns cu succes la nivelul bazei de date și au fost angajate.
- Validați proprietățile tabelului și coloanei în raport cu BRD / FRD / TRD.
- Validați constrângerile și regulile de validare a datelor aplicate în baza de date conform specificațiilor companiei.
- Verificați procedurile stocate pentru orice prelucrare a datelor.
- Examinați jurnalele serverului.
# 3) Starea datelor în stratul Aplicație
SIT poate fi realizat la acest strat prin pașii de mai jos:
- Verificați dacă toate câmpurile obligatorii sunt vizibile în interfața de utilizare.
- Executați câteva cazuri de test pozitive și negative și validați proprietățile datelor.
Notă: Pot exista o mulțime de combinații corespunzătoare importului de date și exportului de date. Va trebui să executați SIT pentru cele mai bune combinații, ținând cont de timpul disponibil.
Testarea sistemului Vs Testarea integrării sistemului
Diferențe între testarea sistemului și SIT:
SIT (Testarea integrării sistemului) | Testarea sistemului |
---|---|
SIT se face în principal pentru a verifica modul în care modulele individuale interacționează între ele atunci când sunt integrate într-un sistem ca întreg. | Testarea sistemului se face în principal pentru a verifica dacă întregul sistem funcționează conform așteptărilor cu referire la cerințele specificate. |
Se efectuează după testarea unității și se va face de fiecare dată când un nou modul este adăugat la sistem. | Se desfășoară la nivelul final, adică după finalizarea testelor de integrare și chiar înainte de livrarea sistemului pentru UAT. |
Este un test de nivel scăzut. | Este un test la nivel înalt. |
Cazurile de testare SIT se concentrează pe interfața dintre componentele sistemului. | Testarea cazurilor, în acest caz, se concentrează pe simularea scenariilor din viața reală. |
Testarea integrării sistemului împotriva testării acceptării utilizatorului
Iată diferența dintre SIT și UAT:
SIT (Testarea integrării sistemului) | UAT (Test de acceptare a utilizatorului) |
---|---|
Această testare se face din perspectiva interfeței dintre module. | Această testare se face din perspectiva cerințelor utilizatorilor. |
SIT este realizat de dezvoltatori și testeri. | UAT este realizat de clienți și utilizatori finali. |
Efectuat după testarea unității și înainte de testarea sistemului. | Acesta este ultimul nivel de testare și se face după testarea sistemului. |
În general, problemele găsite în SIT ar fi legate de fluxul de date, fluxul de control etc. | Problemele găsite în UAT ar fi, în general, ca funcțiile care nu funcționează conform cerințelor utilizatorului. |
Imaginea de mai jos, la nivelurile de testare, va face clar fluxul de la testarea unității la UAT:
SIT Exemplu
Să presupunem că o companie folosește software pentru a stoca detaliile clientului.
Acest software are două ecrane în UI - Ecranul 1 și Ecranul 2 și are o bază de date. Detaliile introduse în ecranul 1 și ecranul 2 sunt introduse în baza de date. De acum, compania este mulțumită de acest software.
Cu toate acestea, câțiva ani mai târziu, compania constată că software-ul nu îndeplinește cerințele și este nevoie de îmbunătățiri. Prin urmare, au dezvoltat un ecran 3 și o bază de date. Acum, acest sistem care are ecranul 3 și o bază de date este integrat cu software-ul mai vechi / existent.
cum se folosește un fișier torentat
Acum, testarea efectuată pe întregul sistem după integrare se numește test de integrare a sistemului. Aici, coexistența unui nou sistem cu unul existent este testată pentru a se asigura că întregul sistem integrat funcționează bine.
Tehnici SIT
În principal, există 4 abordări pentru realizarea SIT:
- Abordare de sus în jos
- Abordarea de jos în sus
- Abordarea Sandwich
- Abordarea Big Bang
Abordarea de sus în jos și de jos în sus este un fel de abordări incrementale. Să începem mai întâi discuția cu abordarea de sus în jos.
# 1) Abordare de sus în jos:
În acest sens, testarea începe cu doar modulul cel mai de sus al unei aplicații, adică UI pe care o numim ca driver de testare.
Funcționalitatea modulelor de bază este simulată cu butoane. Modulul superior este integrat cu modulul de nivel inferior unul câte unul și ulterior funcționalitatea este testată.
Odată ce fiecare test este finalizat, butonul este înlocuit cu modulul real. Modulele pot fi integrate fie într-o manieră largă, fie în adâncime. Testul continuă până când este construită întreaga aplicație.
Avantajul acestei abordări este că nu este nevoie de drivere și cazurile de testare pot fi specificate în funcție de funcționalitatea sistemului.
Principala provocare în acest tip de abordare este dependența de disponibilitatea funcționalității modulului de nivel inferior. Poate exista o întârziere în teste până când modulele reale sunt înlocuite cu butoane. Scrierea butoanelor este, de asemenea, dificilă.
# 2) Abordare de jos în sus:
Elimină limitările abordării de sus în jos.
În această metodă, mai întâi, modulele de nivel inferior sunt asamblate pentru a forma clustere. Aceste clustere servesc ca o subfuncție a aplicației. Apoi este creat un driver pentru a gestiona intrarea și ieșirea cazului de testare. După aceasta, clusterul este testat.
Odată ce clusterul este testat, driverul este eliminat și clusterul este combinat cu următorul nivel superior. Acest proces continuă până când se realizează întreaga structură a aplicației.
Nu este nevoie de buturi în această abordare. Devine simplificat pe măsură ce procesarea se deplasează în sus și nevoia șoferilor se reduce. Această abordare este recomandabilă pentru realizarea SIT pentru sisteme orientate pe obiecte, sisteme în timp real și sisteme cu nevoi stricte de performanță.
care este cel mai bun compilator c ++
Cu toate acestea, limitarea acestei abordări este cel mai important subsistem, adică UI este testat în cele din urmă.
# 3) Abordare Sandwich:
Aici, abordările de sus în jos și de jos în sus discutate mai sus sunt combinate împreună.
Sistemul este perceput ca având trei straturi - stratul de mijloc care este stratul țintă, un strat deasupra țintei și un strat sub țintă. Testarea se face în ambele direcții și se adună la stratul țintă care se află în mijloc și acest lucru este ilustrat în imaginea de mai jos.
Strategia de testare sandwich
Un avantaj al acestei abordări este că stratul superior și stratul inferior al sistemului pot fi testate în paralel. Cu toate acestea, limitarea acestei abordări constă în faptul că nu testează exhaustiv subsistemele individuale înainte de integrare.
Pentru a elimina această limitare, am modificat testarea sandwich în care integrarea straturilor superioare, medii și inferioare sunt testate în paralel folosind butoane și drivere.
# 4) Abordarea Big Bang:
În această abordare, integrarea se face odată ce toate modulele aplicației sunt complet gata. Testarea se face după integrarea tuturor modulelor pentru a verifica dacă sistemul integrat funcționează sau nu.
Este dificil să găsim cauza principală a problemei în această abordare, deoarece totul este integrat simultan, spre deosebire de testarea incrementală. Această abordare este adoptată în general atunci când este necesară o singură rundă de SIT.
Concluzie
În acest articol, am aflat ce este Testul de integrare a sistemului (SIT) și de ce este important să îl efectuați.
Am înțeles despre conceptele de bază, tehnicile, abordările și metodele implicate în efectuarea SIT. De asemenea, am parcurs modul în care SIT este diferit de testarea UAT și de sistem.
Sper că ți-a plăcut acest excelent articol !!
Lectură recomandată
- Ce este testarea componentelor sau testarea modulelor (Aflați cu exemple)
- Ce este testarea comparativă (Aflați cu exemple)
- Ce este testarea integrării (Tutorial cu exemplu de testare a integrării)
- Cele mai bune instrumente de testare software 2021 (Instrumente de automatizare a testelor de calitate)
- Diferențele dintre testarea unitară, testarea integrării și testarea funcțională
- Testarea funcțională Vs testarea nefuncțională
- Integrarea seleniului cu JMeter
- Spock pentru integrare și testare funcțională cu seleniu