- Uvod na koncept pomaka ulijevo
- Što je testiranje pomaka ulijevo?
- Kako Pomak ulijevo Utjecaj na razvoj softvera?
- Što bi testeri trebali raditi drugačije u Shift Left?
- Prednosti testiranja Shift Left
- Zaključak
Javite nam svoje misli/prijedloge u odjeljku s komentarima ispod.
PREV Vodič
Koncept Testiranja softvera uveden je postupno kada su nedostaci iz proizvodnje počeli udarati u proračun projekta i stoga je 'funkcionalno testiranje' stupilo na snagu s vrlo tankim timom testera. U tom smo trenutku bili samo dva testera protiv tima od 20 programera.
IT industrija je počela slijediti vodopadni model za razvoj softvera pri čemu, kao što svi znamo , životni ciklus razvoja softvera ide redoslijedom od .
Dakle, ako počnete slijeva nadesno, faza testiranja je krajnje desno od životnog ciklusa razvoja softvera.
Uvod na koncept pomaka ulijevo
Tijekom određenog vremena ljudi su shvatili važnost testiranja softvera i utjecaj držanja 'faze testiranja' na krajnjoj desnoj strani ili na kraju životni ciklus razvoja softvera. Do ove spoznaje došlo je jer je cijena greške identificirane prema ekstremnoj desnici i na kraju bila vrlo visoka i ogroman napor & bilo je potrebno previše vremena za njihovo popravljanje.
Bilo je slučajeva u kojima nakon što je toliko vremena i truda utrošeno na softver, zbog ključnog buga identificiranog na kraju, kritični softver nije mogao biti pušten u upotrebu tržištu, što je rezultiralo ogromnim gubitkom.
Dakle, zbog identifikacije buga tijekom posljednje faze ili je izdanje odgođeno iliputa, softver je odbačen uzimajući u obzir trud potreban za njihovo popravljanje, što se zaista nije isplatilo.
'Kreške su manje skupe kada se uhvate rano.
Ova spoznaja i velika naučena lekcija uveli su veliku revoluciju u softversku industriju i rodili novi koncept nazvan 'Pomak ulijevo' , što znači pomicanje 'faze testiranja' ulijevo s desna ili uključivanje testiranja u svakoj fazi i uključivanje testera u cijeloj fazi.
Pomak ulijevo testiranje također znači da jednostavno ne testirajte na kraju, već kontinuirano testirajte.
Što je testiranje pomaka ulijevo?
Prvo, načelo 'Pomak ulijevo' podržava Tim za testiranje da surađuje sa svim dionicima rano u fazi razvoja softvera. Stoga mogu jasno razumjeti zahtjeve i dizajnirati testne slučajeve kako bi pomogli softveru da 'brzo zakaže' i omogući timu da popravi sve kvarove što je prije moguće.
Pristup pomaka ulijevo nije ništa drugo nego uključivanje testera mnogo ranije u životnom ciklusu razvoja softvera, što bi im zauzvrat omogućilo da razumiju zahtjeve, dizajn softvera, arhitekturu, kodiranje i njegovu funkcionalnost, postavljaju teška pitanja klijentima, poslovnim analitičarima i programerima, traže pojašnjenja i daju povratne informacije kad god je to moguće za podršku tim.
Ova uključenost i razumijevanje ćevoditi testere da steknu cjelovito znanje o proizvodu, promišljaju različite scenarije i dizajniraju scenarije u stvarnom vremenu na temelju ponašanja softvera koji bi pomogli timu u prepoznavanju nedostataka čak i prije nego što se kodiranje završi.
Kako Pomak ulijevo Utjecaj na razvoj softvera?
Pristup Shift Lift utječe na razvoj softvera na nekoliko načina.
U nastavku je dano nekoliko ključnih točaka o Shift Left:
- Pristup pomaka ulijevo fokusiran je na uključivanje testera u sve i što je najvažnije kritične faze programa . To omogućuje testerima da preusmjere svoj fokus s otkrivanja nedostataka na prevenciju nedostataka i da pokreću poslovne ciljeve programa.
- Pristup pomaka ulijevo daje veliku važnost testiranju s kojim se uloge i odgovornosti testera neizmjerno povećavaju.
- S povećanjem odgovornosti za tim za testiranje, tim se jednostavno ne usredotočuje na 'Testiranje softvera za identifikaciju bugs' , ali proaktivno radi s timom od početnih faza kako bi isplanirao i izgradio robusnu i učinkovitu strategiju testiranja pružajući izvrsno vodstvo testiranja i vodstvo timu fokusirajući se na dugoročnu viziju proizvoda, umjesto da samo preuzme odgovornost za rad na testiranju.
- Pristup pomaka ulijevo daje prilika za Testere da prvo dizajniraju testove , pri čemu su testovi u potpunosti usredotočeni na korisničko iskustvo i njihova očekivanja što će zauzvrat omogućiti programerima da razviju softver temeljen na tim testovima i stoga zadovoljiti potrebe kupaca.
- Pristup Shift Left ne završava samo na Testerima. Premještanje i kontinuirano provođenje aktivnosti testiranja također će omogućiti razvojnim programerima da preuzmu više vlasništva nad svojim kodom i povećaju svoje odgovornosti u testiranju.
- Promjena Lijevi pristup također potiče Testere da usvoje BDD razvoj vođen ponašanjem i TDD razvoj vođen testiranjem , što pomaže u sprječavanju indukcije kvara u softveru.
- Testiranje Shift Left u Agileu: Pristup Shift Left podržava formiranje Agile Scrum timova koji obavezno uključuje testere zajedno s ostalim ulogama i uključuje testere u redovitim stand up pozivima, drugim interakcijama, revizijski sastanci koji su omogućili testerima da dobiju više informacija vezanih uz program i stoga im je omogućio da se prepuste i uključe u detaljnu analizu softvera i pruže brzu povratnu informaciju koja bi pomogla u sprječavanju nedostataka utemeljenih na softveru.
Overall Shift Left testiranje poziva testere da se 'Uključe rano' , što je prije moguće iuključiti se u raspravu i surađivati na idejama, zahtjevima u svakoj fazi gdje ishod faze ima utjecaja na vrijednost konačnog rezultata i također pomoći projektu da identificira rizike i unaprijed ih ublaži.
Što bi testeri trebali raditi drugačije u Shift Left?
U nastavku je nekoliko ključnih čimbenika koje treba primijetiti kao što testeri rade drugačije u Strategiji pomaka ulijevo:
#1) Testni tim mora se rano uključiti u sustav odmah od pokretanja projekta kako bi se razvila integracija s ostatkom tima i poslovanja kako bi se pružili korisni inputi u svakoj fazi razvoja softvera.
#2) Tim za testiranje trebao bi raditi s Business & Operativni tim i steknu jasnoću programa i daju jasan pogled na potražnju i pomoć u učinkovitom planiranju potreba za povećanjem resursa, potreba za obukom i zahtjeva alata za testiranje programa. unaprijed.
#3) Testni timovi moraju komunicirati sa svim poslovnim dionicima rano u razvoju softvera kako bi dobili jasnu vidljivost proizvoda & dizajnirajte objedinjenu strategiju testiranja i planirajte optimizirani napor testiranja, analizirajte ovisnost o testnim okruženjima, trećim stranama, dopunama itd. i pripremite robusnu strategiju automatizacije i okvir te izgraditi učinkovito upravljanje testnim podacimaplan.
#4) Tim za testiranje mora raditi s ostatkom tima u pružanju odličnog vodstva za testiranje i usmjeravanja tima na taj način imajući na umu dugoročnu viziju proizvoda, a ne samo preuzimanje odgovornosti za aktivnosti testiranja.
#5) Zahtjevi su ključ i osnova za uspjeh svakog programa i dobro- definirani zahtjevi definiraju uspjeh projekta. Tijekom faze planiranja zahtjeva, ispitivači trebaju pregledati i analizirati zahtjeve radi bilo kakve dvosmislenosti, bolje jasnoće, potpunosti, mogućnosti testiranja, definicije kriterija prihvatljivosti, itd.
Također potrebno je identificirati zahtjeve koji nedostaju (ako postoje) i razumjeti ovisnosti i strategije implementacije. Clear Requirements pomaže softveru da 'fail Fast' i popravi sve kvarove što je prije moguće.
#6) Unesite dovoljno jasnoće i preciznosti u zahtjeve iznošenjem pravi primjeri koji ilustriraju značajke koje se koriste.
#7) Testeri trebaju prisustvovati sastancima za pregled dizajna redovito i razumjeti dizajn i arhitekturu proizvoda i prepoznati nedostatke dizajna, predložiti alternativne opcije dizajna, identificirati rupe u zakonu i izraditi testne scenarije u skladu s tim kako bi se razbili dizajni.
#8) Testeri moraju provesti statičko testiranje (pregledi) dovoljno unaprijed i dati povratne informacije o ključnom projektudokumenata kako bi se spriječilo da se nedostaci ugrade u softver i kasnije prošire njegov učinak.
#9) Testni tim treba surađivati s timom za dizajn i razvoj u pružanje testnih scenarija unaprijed za razvoj koda i rješavanje svih mogućih scenarija u stvarnom vremenu i poslovnih tokova.
#10) Testni tim mora dizajnirati snažni i robusni testni scenariji tako da se tijekom testiranja identificira samo nekoliko nedostataka i da se glavni nedostaci spriječe pri ulasku u fazu testiranja.
#11) Testeri moraju testirati što je ranije moguće , bilo na samostalnom ili lokalnom sustavu, tako da kvar ne pređe u kasniju fazu.
Cijela srž koncepta 'Shift Left' za Testere je pronaći nedostatke što je prije moguće svim mogućim sredstvima.
Prednosti testiranja Shift Left
The Pristup Shift Left funkcionira na temelju agilnog manifesta i ima nekoliko prednosti.
To su:
- Pojedinci i interakcije nad procesima i alate.
- Radni softver preko sveobuhvatne dokumentacije.
- Suradnja s klijentima preko pregovora o ugovoru.
- Odgovaranje na promijenite slijedeći plan.
Možemo vidjeti da dok je vrijednost prisutna u stavkama s desne strane, više cijenimo stavke s lijeve strane.
Pa, pomak ulijevo je otprilikedonoseći ideju testiranja ranije u procesu, što rezultira boljim i učinkovitijim testiranjem i poboljšanjem kvalitete softvera.
Ukratko, proces testiranja pomaka ulijevo je:
- Rano pronalaženje nedostataka čime se smanjuju troškovi projekta.
- Kontinuirano testiranje iznova i iznova kako bi se na kraju smanjili nedostaci.
- Za automatizirati sve i poboljšati vrijeme izlaska na tržište.
- Usredotočiti se na zahtjeve kupaca i poboljšati korisničko iskustvo.
Zaključak
Koncept 'Pomak ulijevo' donio je veliku transformaciju za cijelu ulogu 'Testiranja'. Do tada je jedini fokus testiranja bio samo na 'otkrivanju nedostataka', a sada je cilj 'pomaka ulijevo' iz perspektive testiranja putovanje od 'ranog otkrivanja nedostataka do statičkog testiranja' .
Stoga je pomak ulijevo veliki skok u softverskoj industriji u metodologiji razvoja softvera prema brzini izlaska na tržište, poboljšanju kvalitete softvera i smanjenju vremena do tržišta.
O autoru: Ovaj je članak napisao član STH tima Gayathri Subrahmanyam. Ona se bavi testiranjem softvera od 90-ih, baš kada je uloga ispitivača uvedena u industriju. Tijekom svoje karijere testiranja, radila je mnogo procjena TMMI-a, radova na industrijalizaciji testiranja i postavljanja TCOE-a uz rukovanje isporukama testova i