system testing vs end end testing
Pregled Ispitivanje sustava i testiranje od kraja do kraja:
Testiranje od kraja do kraja i testiranje sustava uvijek idu ruku pod ruku, ali čak i iskusni stručnjak za ispitivanje može se zbuniti o ogromnim prednostima koje svaka nudi i odabrati samo jednu.
U ovom ćemo članku pokušati raspraviti između testiranja od kraja do kraja i testiranja sustava. Da bismo razumjeli razliku između toga, prvo ćemo shvatiti kroz koje faze prolazi bilo koji proizvod u razvoju.
U softverskoj industriji uvijek smo u dilemi da li biramo između bržeg i kvalitetnijeg izdanja, ali između njih uvijek postoji fina ravnoteža. Svi istodobno očekujemo brzinu kao i kvalitetu, što je prilično teže.
Što ćete naučiti:
- Život softverskog proizvoda na testiranju
- Što je testiranje sustava?
- Zašto je testiranje sustava važno?
- Kada započeti testiranje sustava?
- Što je ispitivanje od kraja do kraja?
- Zašto je testiranje od kraja do kraja važno?
- Kada započeti testiranje s kraja na kraj?
- Razlika između testiranja sustava i testiranja od kraja do kraja
- Testiranje sustava ili testiranje od kraja do kraja ili oboje?
- Zaključak
- Preporučena literatura
Život softverskog proizvoda na testiranju
Životni ciklus proizvoda započinje nakon što se od klijenta dobiju poslovni zahtjevi. Dotični tim koji je odgovoran za to napravit će temeljitu analizu istih i dalje dizajnirati tehničke specifikacije.
Te će specifikacije pomoći tehničarima ili programerima da započnu svoj posao u razvoju softvera. Ovdje su objašnjeni koraci koji su objašnjeni u nastavku radi lakšeg razumijevanja.
Korak 1: Na temelju opisa proizvoda na visokoj razini, softverski se proizvod kategorizira u različite module, a zatim u komponente ili jedinice. Te su jedinice razvijene neovisno, tako da se njihov razvoj može nastaviti paralelno angažiranjem više programera.
Jednom kada se razviju, ove jedinice se testiraju pojedinačno, što će spadati u jedinstveno testiranje.
Korak 2: Pojedinačna provjera valjanosti osigurava da sve jedinice sustava rade onako kako se očekuje kako na funkcionalnoj, tako i na osnovi izvedivosti. Te se komponente, moduli ili podsustavi integriraju sa sljedećom razinom, a zatim se testiraju kao integrirana jedinica u integracijskom testiranju.
3. korak: Testiranje sustava dolazi do izražaja u ovom koraku gdje će se integrirani proizvod prvi put testirati kao cjelina u pseudoprodukcijskom okruženju. Ova se razina ispitivanja provodi radi provjere usklađenosti s funkcionalnim i nefunkcionalnim poslovnim zahtjevima.
Korak # 4: To je razina ispitivanja koja se provodi radi prihvatljivosti klijenta i stoga se naziva ispitivanje prihvaćanja. To će se izvesti neposredno prije rukovanja softverom klijentu, a to je proizvodno okruženje.
Što je testiranje sustava?
Ispitivanje sustava je nešto što se radi nakon testiranja integracije i prije ispitivanja prihvatljivosti bilo kojeg dostupnog hardvera ili softvera.
Ispitivanje sustava provodi se kako bi se analizirala koordinacija susjednih komponenata kao jedan sustav kako bi se osiguralo ispunjava li Standarde kvalitete ili ne. Primarni fokus je otkriti nedostatke unutar međusklopova izvođenjem funkcionalnih i nefunkcionalnih ispitivanja integriranog proizvoda.
Nefunkcionalna ispitivanja provode se kako bi se osiguralo hoće li proizvod u razvoju odgovarati poslovnim očekivanjima ili ne. Provode se radi određivanja vremena odziva aplikacije ili provjere kompatibilnosti ili rukovanja instalacijom, performansama, regresijom, skalabilnošću, sigurnošću i nekoliko drugih područja.
Stoga aplikacija mora očistiti i funkcionalnu i nefunkcionalnu razinu kako bi osigurala da, ako je u skladu s ostalim tržišnim standardima, može pokvariti reputaciju tvrtke.
Objasnit ću vam uz pomoć primjera mobilne aplikacije za rezervacije taksija poput Ubera:
Uber nudi mogućnost rezervacije kabina putem interneta i ima različite module kao što su praćenje lokacije, pristupnici plaćanja, cijena kabine i profili vozača koji se mogu samostalno testirati kao dio Jedinstvenog testiranja .
Nakon što ovi moduli rade neovisno, integriraju se kako bi se testiralo i osiguralo rade li međusobno ispod Integracijsko ispitivanje.
Nadalje, zahtjevi kupaca počet će se provjeravati samo tijekom testiranja sustava, na primjer ako kupac može pronaći taksi najbliži svom mjestu ili ako može izvršiti plaćanje Uberu odabirom načina plaćanja itd.
Provjera valjanosti ovih scenarija obrađena je u Ispitivanje sustava .
Zašto je testiranje sustava važno?
Potrebno je testiranje sustava jer programeri / testeri trebaju provjeriti nekoliko aspekata prije prelaska na sljedeću razinu.
Nekoliko aspekata uključuje:
- Mora biti siguran u rad softvera kao cjeline.
- Treba provjeriti da li proizvod preskače bilo kakve funkcionalne i nefunkcionalne zahtjeve.
- Potrebno je testirati proizvod u proizvodnom okruženju.
- Potrebno je provjeriti proizvod s podacima sličnim proizvodnji.
Testiranje sustava uključuje scenarije temeljene na poslovnim rizicima, slučajevima korištenja ili opisu ponašanja proizvoda na visokoj razini. Slučajevi povezani s interakcijama s različitim resursima sustava također bi trebali biti dio testiranja sustava.
Stoga bi ga trebao provoditi netko tko ima potpuno znanje o traženom proizvodu kako na razini arhitekture tako i na poslovnoj razini. Interno znanje na razini kodiranja nije potrebno, ali znanje sustava obvezno je za ispitivača.
Općenito, odvojeni tim će biti dodijeljen sa zadatkom testiranja sustava, a tim će dizajnirati vlastite planove ispitivanja sustava i slučajeve testiranja sustava, koji će se razlikovati od prethodno izvedenih u smislu pokrivenosti testovima. Ako je potrebno, višestruke iteracije testiranja sustava mogu se izvesti u nekoliko okruženja.
Kada započeti testiranje sustava?
Testiranje sustava može se započeti kada:
- Jedinstveno ispitivanje uspješno je zatvoreno za sve jedinice bez otvorenih nedostataka.
- Sve komponente testirane na jedinici dobro su integrirane i integracijsko testiranje uspješno je izvedeno.
- Dostupno je pseudo-produkcijsko okruženje za testiranje sistemskog proizvoda.
- Tester sustava svjestan je svih ulaza / izlaza sustava i spreman je s testnim artefaktima.
Što je ispitivanje od kraja do kraja?
Testiranje softvera važan je parametar osiguranja kvalitete softvera. Kvalitetan proizvod uvijek pruža veću razinu zadovoljstva kako izumiteljima, tako i kupcu. Drugim riječima, kvalificirani ili vrhunski proizvod rezultat je temeljite regresije i uklanjanja nedostatka na svakoj razini.
Kao što je objašnjeno samim imenom, ispitivanje od kraja do kraja je jedna od razina ispitivanja gdje se tijek aplikacije ispituje zajedno s ovisnim sustavima. To je učinjeno kako bi se osigurala nesmetana interakcija sa pozadinskim i prednjim aplikacijama kao što su baze podataka ili GUI koji koriste mrežne kanale i stoga se naziva Ispitivanje lanca također.
Za razliku od testiranja sustava, testiranje korisničkog sučelja ovdje ne igra značajniju ulogu, ali provjera je temeljnih podataka koji sučelje stavlja u funkcijski način. Ispitivanje od kraja do kraja obično se provodi kada se proizvod kvalificira za testiranje sustava.
Nastavljajući naš primjer Ubera u fazi testiranja, potvrdit ćemo cjelokupno putovanje kupaca
Otvaranje aplikacije na korisničkom mobilnom uređaju -> pronalaženje taksija za uneseno odredište -> Praćenje kabine prije ili tijekom vožnje-> dovršetak vožnje i plaćanje pomoću jedne od mogućnosti plaćanja -> konačno poravnanje kredita na vozačev račun.
Prolazak kroz ovaj tok od kraja do kraja osigurava da kupac može ispuniti svoje potrebe. Ovo je testiranje važno kako bi se identificirali problemi s korisničkim iskustvom, posebno povezani s povezivanjem više sustava.
Zašto je testiranje od kraja do kraja važno?
Ispitivanje od kraja do kraja igra važnu ulogu kada razvijeni proizvod treba biti distribuirani sustav i ako mora funkcionirati zajedno s ostalim sustavima u različitim okruženjima. U takvim scenarijima potrebna je provjera od 360 stupnjeva kako bi se osigurala točna interakcija između različitih platformi i okruženja.
Glavni ciljevi testiranja s kraja na kraj uključuju:
qa pitanja i odgovori na intervju za tester pdf
- Da bismo bili sigurni da je razvijeni proizvod dobro koordiniran sa bilo kojim od njegovih podsustava, koji možemo ili ne možemo biti u našem vlasništvu.
- Za provjeru svih tokova sustava iz izvornih u odredišne sustave.
- Za potvrdu zahtjeva iz perspektive krajnjeg korisnika.
- Utvrditi probleme u hetegenim sredinama.
Ako je potrebno, treba provesti ponovljive testove kako bi se provjerila ispravnost aplikacije. Ponekad se može dogoditi situacija kada vidimo sukob između programera i ispitivača na temelju razumijevanja zahvaćenih područja primjene zbog manjih promjena koda.
Programeri mogu misliti da je promjena minimalna, ali da je evolucija dovoljno značajna za ponovno izvršavanje scenarija od kraja do kraja za cjeloviti sustav. Međutim, ovo možda gura datume isporuke i može povećati i troškove.
Kada započeti testiranje s kraja na kraj?
Obično se izvodi ispitivanje od kraja do kraja-
- Jednom kada se proizvod kvalificira za testiranje sustava, u kojem su obuhvaćeni svi funkcionalni aspekti.
- Kada su ovisna okruženja identificirana i dostupna za provođenje nivoa protoka.
- Kada je tester opremljen potrebnim znanjem i ispitnim artefaktima.
- Kada ispitivač ima odgovarajuće alate koji mogu analizirati protok podataka.
Razlika između testiranja sustava i testiranja od kraja do kraja
Slijedi nekoliko razlika između sistemskog testiranja i testiranja od kraja do kraja:
Ispitivanje sustava | Ispitivanje od kraja do kraja |
---|---|
Razvijeni proizvod testiran je prema tehničkim zahtjevima specifičnim za proizvod utvrđenim na temelju poslovnih zahtjeva. | Razvijeni proizvod testiran je zajedno sa ovisnim sustavima prema poslovnim zahtjevima. |
Obuhvaća funkcionalne kao i nefunkcionalne aspekte ispitivanja. | Pokriva razine sučelja testiranja s obzirom na sve izvorne i odredišne sustave. |
Izvedeno prema kraju životnog ciklusa razvoja softvera. | Izvodi se nakon što proizvod ispunjava uvjete integracijskog testiranja. |
Sve implementirane značajke proizvoda bile bi pregledane kako bi se otkrili neočekivani rezultati. | Procesni će se tijekovi provjeravati zajedno s prednjim i pozadinskim i srednjim sustavima. |
Tester bi trebao dobro razumjeti funkcionalnost razvijenog proizvoda. | Tester bi trebao dobro razumjeti tijekove podataka i tijekove rada unutar sustava. |
Tester sustava ne treba brinuti o fazama životnog ciklusa razvoja proizvoda. | Tester s kraja na kraj mora razumjeti sve faze. |
Testiranje sustava ili testiranje od kraja do kraja ili oboje?
Često se testiranje sustava i testiranje od kraja do kraja smatraju istim, ali to nije istina. Oboje su različiti oblici testiranja s različitim obuhvatom ispitivanja.
Iako testiranje od kraja do kraja provjerava tijek aktivnosti od nule do kraja sustava koji pokriva sve ovisne sustave, testiranje sustava provjerit će istu funkciju s različitim skupom ulaza kako bi se procijenio odgovor.
Dakle, pokrivenost testom jer će se obje vrste ispitivanja razlikovati.
Zaključak
Ispitivač sustava mora imati način razmišljanja stvarnih korisnika, dok ispitivač s kraja na kraj mora podjednako razumjeti gornji i niži sustav.
Kao što je gore objašnjeno, obje vrste ispitivanja imaju jednaku važnost u ciklusu razvoja proizvoda i stoga su potrebne za otkrivanje nedostataka različitih kategorija.
Nadam se da biste imali jasnu ideju za koje testiranje se odlučiti? U međuvremenu, slobodno podijelite svoja iskustva u odjeljku za komentare u nastavku.
Preporučena literatura
- Najbolji alati za testiranje softvera 2021. [Alati za automatizaciju ispitivanja kvalitete]
- Preuzimanje e-knjige za testiranje primera
- Alfa testiranje i beta testiranje (cjelovit vodič)
- Funkcionalno ispitivanje vs nefunkcionalno testiranje
- Ispitivanje opterećenja pomoću HP LoadRunner vodiča
- Razlika između testiranja radne površine, klijentskog poslužitelja i web testiranja
- Što je gama testiranje? Završna faza ispitivanja
- Potpuni vodič za testiranje provjere izrade (BVT testiranje)