how effectively prepare test bed
Izazovi i najbolji postupci postavljanja ispitnog prostora / testnog okruženja:
U nekoliko navrata testeri otkrivaju da se njihovi nedostaci odbijaju zbog okoliša ili se stalno ponavljaju iz sličnih razloga. Iako otvaranje najvećeg broja nedostataka sigurno mora biti jedno od osobnih mjerila svakog ispitivača, većina ispitivača mora naglasiti i postojanje najvišeg broja valjanih nedostataka.
Kako se to postiže?
Osim ostalih aspekata poput planiranja različitih scenarija ispitivanja i temeljitog razumijevanja stavke, a mora se uložiti dobra količina vremena u postavljanje ispitnog ležišta ili testnog okruženja . Drugo, unatoč tome što imaju procijenjeni iznos za planiranje testnih slučajeva, testeri to također moraju učiniti usmjerite svoje energije na stvaranje učinkovitih podataka o ispitivanju .
Osobno, kao dio postupka revizije, primijetio sam da se najveći broj valjanih nedostataka pronađe kada se uloži dosta truda u ispravno stvaranje ispitnog ležišta ili testnog okruženja i kada ispitivač detaljno prouči razumijevanje vrste okoliša koji je potreban.
Također, vrsta testnih podataka dostavljenih u testno okruženje može otkriti neke vrlo ozbiljne nedostatke u kodu / značajci koji se ispituju, a koji mogu ozbiljno utjecati na kvalitetu proizvoda.
Ovaj članak govori o tome što točno podrazumijeva ispitni ležaj: To je postupak postavljanja testnog okruženja i postavljanja testnih podataka u dva koraka:
1. dio) Raniji dio članka raspravljat će o opći postupak postavljanja testnog okruženja , najčešće suočeni s problemima postavljanja s kojima se suočavaju testovi i pokazivači koje treba imati na umu prilikom stvaranja testnog kreveta umjesto ovih izazova.
2. dio) Nakon što smo u ovom članku rekli toliko puno o testnom krevetu, vrijedilo je baciti malo svjetla na Održavanje testnog okoliša aspekti također. Sljedeći dio članka govori o drugom dijelu postavljanja ispitnog ležišta koji uključuje podatke o ispitivanju, pristup postavljanju i neke učinkovite Ispitajte tehnike upravljanja podacima .
Uz stalni „veliki prasak“ u razvoju i testiranju softvera, sve je veći fokus na usvajanju različitih metodologija kako bi se cjelokupni postupak osiguranja kvalitete učinio transparentnim, učinkovitim i primjerenim.
Različite revizije kvalitete provode se u organizacijama kako bi se osiguralo da se rad tima za ispitivanje može na odgovarajući način procijeniti i imati mjerljive rezultate s mjernim podacima identificiranim pri inicijalizaciji ciklusa ispitivanja. Ti rezultati omogućuju utvrđivanje mjesta na kojem se nalazi određeni tim u smislu osiguranja optimalne kvalitete softvera koji testiraju.
Ova izvješća također pomažu timu da shvati mogućnosti za poboljšanje na temelju zapažanja danih tijekom revizije.
Nepotrebno je spominjati, vrlo očiti pokazatelj za bilo koji ispitni tim bio bi s obzirom na ukupan broj otvorenih nedostataka u odnosu na broj valjanih nedostataka . Stoga je jedno od pitanja koje se očito pojavljuje - Što je osnova pokušaja otkrivanja bilo kakvog nedostatka? Drugim riječima, koji je temelj na kojem se može pronaći nedostatak?
Odgovor je jednoglasan - postavljanje ispitnog ležaja i / ili testnog okruženja. Postoje timovi za postavljanje kvalitete unutar timova smanjiti nedostatke koji se odbijaju kao pogreška testnog postavljanja / korisnička pogreška, nevažeće konfiguracije ili u nekim slučajevima nedostaci koji nastaju kao bijeg od određenog tima zbog nedostupnih konfiguracija, neprovjerenih konfiguracija.
Krenimo od pobližeg proučavanja definiranja što je testni krevet ili testno okruženje.
Što ćete naučiti:
Što je testni krevet i testno okruženje?
U vrlo generičkom smislu, testni ležaj mogao bi se definirati kao neka vrsta razvojnog okruženja u kojem implementatori koda ili modula imaju slobodu testiranja svojih modula bez ikakvih smetnji od strane test tima, u apsolutnom ograničenju.
Međutim, ispitni krevet nije specifičan samo za razvojni tim. Iz perspektive testnog tima ili testera, budući da Test Bed nije ništa drugo nego platforma identificirana za testiranje softvera / proizvoda, on se također naizmjenično naziva Test Environment.
Bilo koji ispitni sloj ili testno okruženje morali bi biti konfigurirani u skladu s identificiranim ciljem ispitivanja za aplikaciju / proizvod / softver koji se testira. U određenim situacijama, ispitni ležaj bio bi uspoređivanje testnog okruženja i testnih podataka s kojima radi.
Komponente testnog okruženja
Bilo koji test imao bi svoje specifične zahtjeve za testno okruženje, ali u vrlo širokom smislu, bilo koje testno okruženje / testno okruženje sastojat će se od hardvera, softvera i dijelova mreže koji podržavaju potrebnu konfiguraciju u najmanju ruku za vođenje i provođenje određenog testa .
Dobro je poznata činjenica da razumnu količinu vremena ispitivača troše ekološki problemi, koji zauzvrat utječu na produktivnost i rasporede ispitivanja. Iako se vrsta izazova razlikuje za svaki ispitni tim, neki od njih mogu biti uobičajeni.
Neki od ključnih izazova s kojima se često susreću su:
# 1) Udaljeno okruženje
Probna sredstva ili okruženja uglavnom se nalaze geografski na mjestima koja su udaljena od timova. Ovo je jedan od najčešćih izazova za testne timove, u slučaju bilo kakvih problema koji se mogu pojaviti u vezi sa hardverom, firmverom, softverom, umrežavanjem itd.
Timovi koji troše imovinu trebali bi se u velikoj mjeri osloniti na timove za podršku na mjestu gdje je imovina prisutna.
U istim redovima ako nekom materijalu treba nadogradnja firmvera ili nadogradnja gradnje, testnom će timu možda trebati podrška timova za podršku koji posjeduju okruženje otvaranjem ulaznica za podršku. To također može usporiti znatan raspored vremena i kašnjenja, posebno u slučajevima razlika u vremenskim zonama.
# 2) Kombinirana uporaba između timova
Najčešće nego ne, razvojni i ispitni timovi koriste iste okolišne resurse. Iako opća norma definira da razvojno, testno i proizvodno okruženje moraju biti odvojeni, zapravo se ovaj idealan scenarij vrlo rijetko postiže. Organizacije postaju izuzetno neprijatne po cijenu pribavljanja zasebnih resursa za svaki tim.
Stoga većina organizacija nalaže zajedničko korištenje okoliša između razvoja i testa. Uz to, ako se razvojni i testni resursi istovremeno natječu za korištenje iste imovine, to dovodi do kaosa i nesuglasica unutar članova.
# 3) Neučinkovito planiranje korištenja resursa za integraciju
U nekim slučajevima za scenarije kojima je potreban ispitivanje od kraja do kraja pri čemu postoji integracija dviju ili više komponenata da bi funkcionirale zajedno, opet može postojati zahtjev za zajedničkom upotrebom resursa između testnih timova. Neučinkovito planiranje s obzirom na upotrebu uvelike pridonosi okolišu koji postaje nestabilan, osim sukoba između timova.
Najočitiji učinak ovoga je da problem koji se primijeti određeni jednom ili dva puta može proizvesti potpuno drugačije ponašanje u sljedećim izvedbama za isti scenarij. Ako je za to već otvoren nedostatak, velike su šanse da ga razvojni program neće prihvatiti kao valjanog kandidata za popravak.
# 4) Konfiguracija složenog testa
Konfiguracija ispitnog ležišta ili testnog okruženja ponekad je previše složena. To će predstavljati nekoliko izazova jer će testnom timu trebati potrebne vještine za razumijevanje potrebnih konfiguracija. Ponekad nedostaje baza znanja dostupna ispitivaču kako bi mogao smisliti potrebnu konfiguraciju.
U takvim slučajevima testeri mogu sami izazvati pogrešku u ispitnom ležištu nepravilnom konfiguracijom. To bi uvelike utjecalo na test slučaj i rezultate koje daje.
# 5) Razradite vrijeme postavljanja
U određenim drugim vremenima, za svaki testni slučaj, postavljanje testa može biti previše razrađeno za svaki identificirani testni slučaj. To bi moglo biti posljedica širokog spektra supostojećih tehnologija koje moraju biti povezane zajedno ili više komponenata da bi se radilo zajedno u slučajevima integracijskog testiranja.
U tim slučajevima svaka od komponenata mora savršeno raditi kako bi se osigurali dosljedni rezultati, jer jedna komponenta može činiti ulaz za sljedeću.
Najbolji postupci za postavljanje testnog okruženja
Pregledali smo širok pregled izazova s kojima se ispitivač suočava prije ili tijekom započinjanja izvođenja testa. Većina nas se suočila s jednim ili više ovih problema u određenom trenutku tijekom prekretnica u projektu. Ti su izazovi postojali i možda će i dalje postojati u različitom stupnju, jer idealistička situacija ne postoji.
S obzirom na to da su izazovi postavljanja sastavni dio posla ispitivača i da su neizbježni, evo nekoliko prijedloga kako učinkovito pripremiti postavku za testiranje. To bi moglo smanjiti kvarove koji mogu nastati zbog problema s postavljanjem.
Savjet br. 1) Razumjeti Temeljito ispitajte zahtjeve i educirajte se
unit testiranje vs funkcionalno testiranje vs integracijsko testiranje
Uvijek započnite s osnovama i s najočitijim! Kada razvojni tim uvede dokument sa specifikacijama ili dokument o upotrebi, nepromjenjivi korak za testni tim je razumijevanje zahtjeva stavke retka i zatim priprema dokumenta za test koji detaljno opisuje slučajeve ispitivanja.
Dok se provodi planiranje testa, ono je najbolji praksa uključivanja i detaljnih podataka o testnom okruženju u dokument o testnom slučaju. Nema nagađanja da će tester tada provesti neko vrijeme analizirajući koje testno okruženje može biti potrebno i u skladu s tim potrebne konfiguracije.
To se može postići razgovorom s razvojnim timom / arhitektima kako bi se stvorila dobra baza znanja. To ne samo da će uštedjeti neko vrijeme u ciklusu izvršenja, već će pomoći i ispitivaču da učinkovito izvrši raspodjelu vremena izvršenja između jednostavnih i složenih testova.
Osobno je dobar ishod toga što su mnogi od nas na samom početku ciklusa otkrili probleme s postavljanjem (koji bi sami po sebi spriječili dosljedno izvršavanje testa), što nam je donijelo vremena da kanaliziramo i pribavimo potrebnu pomoć za rješavanje tih problema - dakle ne protežući ciklus ispitivanja preko neprihvatljivih razdoblja.
Još jedan pozitivan učinak koji bi to imalo jest da bi to uvelike poboljšalo znanje testnog tima i spriječilo nepotrebne nedostatke. Iako ova praksa sažima gotovo sve prakse koje su suštinski potrebne za suočavanje s gore spomenutim izazovima postavljanja testa, ipak je vrijedno spomenuti ostale savjete.
Savjet br. 2) Provjera povezanosti
Druga najvažnija kontrolna točka je osigurati dostupnost resursa ili imovine koju namjeravate koristiti za testiranje. U slučaju da sustav treba pokrenuti integriran s drugim strojevima, provjerite njihovu međusobnu povezanost pomoću ping-a ili telneta.
Također ako sustavi trebaju međusobno komunicirati i nalaze se iza vatrozida, pobrinite se da se mogu provjeriti autentičnost putem tih vatrozida pomoću osnovnih sigurnosnih opcija (BSO) i provjeriti ima li i proxyja. U slučaju da primijetite da neki strojevi nisu dostupni ili im je potrebna BSO provjera autentičnosti, mogu se postaviti odgovarajući zahtjevi za uslugom kako bi se timu za podršku ispunio zahtjev.
To je osobito korisno kada je okoliš na udaljenim mjestima i također će izbjeći eskalaciju u odnosu na strojeve i sustave. U slučaju da test tim zahtijeva pristup bilo kojem resursu ili spremištu, to bi pomoglo u proaktivnom određivanju istih.
Savjet br. 3)Provjera mreže i / ili pohrane
Ovo je gotovo proširenje na prethodni savjet i trebala bi mu još neka provjera s većom tehničkom dubinom. Provjerite ima li potrebno testiranje potrebnu propusnost i je li za testiranje potrebna internetska veza. Također, svakako pronađite način da provjerite je li mrežna topologija između sustava i resursa točna.
Drugo, ako vaš cilj testiranja podrazumijeva potrebu za bilo kakvom pohranom, pobrinite se da postoji pohrana i mrežna povezanost. Uglavnom je odgovornost administratora da to uspostavi, međutim, također je velika vrijednost dodati neko isto radno i funkcionalno znanje.
Savjet br. 4) Provjerite potreban hardver i softver, licence
Mnogo se puta dogodi da testeri započnu izvršavanje na sustavima bez provjere potrebnog hardvera i softvera koji bi mogli biti potrebni. Kao rezultat toga, ispitivač gotovo tijekom ciklusa testiranja shvati da su određene funkcije dostupne samo na višoj razini hardvera ili softvera / firmware-a.
U to će vrijeme ispitivač označiti blokator u svom testnom naporu koji jede znatno vrijeme testiranja. Stoga je neprocjenjiva praksa imati kontrolnu točku koja će bilježiti hardver i softver koji su prethodno potrebni.
Mnogo puta može doći do zastoja u nadogradnji hardvera / softvera, na što se sve svodi Savjet 1 gdje ispitivač mora sudjelovati u proaktivnom planiranju hardvera. Neki od softvera mogu zahtijevati licence koje mogu zahtijevati odobrenja i radnje pravnog tima. To je procesno vođena akcija, koja bi opet trebala potrajati nekoliko dana da bi se ispunila, što treba planirati.
Savjet br. 5)Preglednici i verzije
Testiranje koje radite mora biti zrcalno što će krajnji korisnik izvesti . Mogao bi testirati na određenom pregledniku na najnovijim verzijama svih preglednika. Stoga je obavezno identificirati različite vrste preglednika koji će se koristiti za testiranje i instalirati ih u vlastitom lokalnom postavku testa.
Drugo, također odredite koje verzije preglednika treba koristiti za testiranje. Dobra praksa bila bi započeti s preglednikom niže verzije, osiguravajući tako povratnu kompatibilnost, a zatim nadograditi na najnoviju verziju.
Savjet br. 6)Planiranje upotrebe testnog okruženja.
S obzirom na činjenicu da ispitni tim nikada neće imati situaciju da ima vlastite testne resurse, sustave i sredstva - jedna je od glavnih prekretnica u planiranju ispitivanja učinkovita upotreba testnih resursa.
koji je najbolji računalni operativni sustav
To je posebno potrebno kada više od jednog tima mora pristupiti istom skupu resursa ili zbog krajnjeg scenarija koji se sastoji od dvije ili više komponenata koje rade zajedno ili zbog situacije kada je postavka testa previše razrađena ili složena da bi se mogla replicirati vrlo lako i može biti više članova unutar istog tima koji imaju svoje ciljeve za testiranje s istim postavkama.
Dobra bi praksa bila razraditi pristup dijeljenja vremena pri čemu ga određeni tim ili osoba koristi za prvu polovicu, a preostali ljudi za drugu polovicu. Može biti negdje između toga što će biti uobičajeno kada svaki od njih može pokrenuti neovisne testove koji neće ometati drugog.
To će ne samo smanjiti kaos i sukobe unutar članova već će i osigurati stabilnost ponašanja u okolišu dulje vrijeme.
Savjet br. 7)Alati za automatizaciju i njihove konfiguracije
Kao što znamo, svaka stavka retka u testiranju imat će nekoliko ponavljajućih testova koji će biti dio regresivnog ciklusa koji će trebati biti automatiziran. Test tim mora utvrditi koju vrstu automatizacije žele raditi i potrebne alate za to.
Iako ovo nužno ne treba biti dio pripreme za okoliš, ipak bih ovo naveo kao najbolju praksu da se alati za automatizaciju identificiraju i konfiguriraju u skladu s tim. To bi u potpunosti ovisilo o diskrecijskoj ocjeni ispitivača kada želi obavljati ovu aktivnost, jer to nije obvezni čimbenik koji osigurava spremnost za testiranje.
Zaključak
Ovi savjeti i trikovi mogu stvoriti dobar standard i trag kako bi se osigurala spremnost testnog okruženja za testiranje. Bez sumnje, svaki se tim suočava sa svojim jedinstvenim nizom izazova, a gornji savjeti mogu se prilagoditi i prilagoditi njihovim vlastitim potrebama.
Zapravo, izvor za bilježenje cijelog ovog kostura savjeta dolazi iz jednog od mojih zadataka gdje sam se suočio s ozbiljno složenim problemima s postavljanjem i trebala mi je gotovo godina da uopće započnem testiranje!
Iako su ograničenja u testnom okruženju bila izvan moje kontrole, smatrao sam da su se mnogi od tih problema mogli prijaviti ranije da sam primijenio ove savjete. Od tada ga primjenjujem za svaki zadatak koji mi se nađe na putu, a ovaj mi je kostur puno pomogao u proaktivnom pronalaženju problema s postavljanjem i usmjeravanju mojih napora kako bih ih riješio.
O autoru: Ovaj članak napisala je Sneha Nadig. Radi kao voditeljica testiranja s više od 7 godina iskustva u projektima ručnog i automatiziranog ispitivanja.
U drugom dijelu ovog članka vidjet ćemo postupak postavljanja i održavanja testnog okruženja te savjete za pripremu i upravljanje podacima o testiranju. U međuvremenu, slobodno postavljajte svoje komentare o pripremi testnog kreveta u komentare.
Preporučena literatura
- Kako učinkovito izvršiti testiranje nakon objavljivanja i smanjiti utjecaj izdanja na klijente uživo
- Kako odlučujete koji su nedostaci prihvatljivi da bi softver mogao početi raditi?
- Kako pripremiti i dostaviti izvanrednu prezentaciju o QA testiranju timu
- Proces upravljanja nedostacima: Kako učinkovito upravljati nedostacima
- 9 najboljih ideja za testere kako bi efikasno iskoristili vrijeme svoje klupe
- Vodstvo u testiranju - Odgovornosti testa i kako učinkovito upravljati test timom
- Kako učinkovito planirati i upravljati projektima testiranja (savjeti)
- Postupak neispravnosti i načini rješavanja sastanka s oštećenjima