Milžiniškos programinės įrangos įmonės, tokios kaip "Google", sėkmingai sėkmingai vykdo savo programinės įrangos trūkumus, tačiau mažesnėms įmonėms ir pradedantiesiems nėra tokios prabangos.
Klientai tikisi, kad produktai darytų tai, ką jie reikalauja pardavimų puslapyje arba dokumentuose. Turėdami tiek daug galimybių, jie niekada nejaus džiaugsmo šokinėti laivą, jei produktas sutaupys laiko ir pinigų. Todėl prieš paleidžiant programinę įrangą atliekami griežti bandymai, kad:
pabrėžti skirtumus tarp pradinės koncepcijos ir galutinės produkcijos
patikrinkite, ar programinė įranga veikia taip, kaip suplanuoti dizaineriai
patvirtinti galutinį produktą - produktas turi atitikti klientų reikalavimus
įvertinti savybes ir kokybę
Testavimas yra griežtas planas. Tai optimizuoja vertingų išteklių - įgūdžių, laiko ir pinigų - naudojimą, kartu suinteresuotosioms šalims suteikiant esminę informaciją, kad produktas būtų išverstas į priekį. Siekiama palengvinti gerą galutinio vartotojo patirtį taikant griežtą kokybės užtikrinimo programą. Kai tokie aukšti įnašai, QA vadovai yra vieni iš geriausių "tech" darbuotojų . Paprastai šie tyrimai atliekami taip:
Reikalavimų analizė, kurioje vadovai išdėsto planą įdiegti tinkamą bandymo strategiją.
Testai prasideda ir rezultatai analizuojami.
Visi defektai ištaisomi, o programinė įranga pereina regresijos testavimą - sistema, kuri patikrina, ar programa veikia po pakeitimų.
Tyrimo uždarymo ataskaita išsamiai apibūdina visą procesą ir rezultatus.
Programinės įrangos testavimo metodai
Čia yra skirtingi metodai, naudojami vertinant produkto elgesį ir našumą.
Juodosios dėžės ir baltos dėžės testavimas yra du pagrindiniai metodai.
- Juodosios dėžės testavimas - taip pat vadinamas funkciniais arba specifikacijomis pagrįstu bandymu, šis metodas yra skirtas produkcijai. Testeriai nesusiję su vidiniais mechanizmais. Jie tik patikrina programinę įrangą, ką ji turėtų. Žinios apie kodavimą nėra būtinos, o testeriai veikia vartotojo sąsajos lygiu.
- Baltos dėžės testavimas . Šis metodas, kaip bandymo procedūros dalis, naudoja žiniatinklio kodavimą. Kai produktas nepavyksta, bandytojai, norėdami išsiaiškinti priežastis, kiek įmanoma sugeria kodą. Programinės įrangos kūrėjai tai daro patys, nes nustato, kaip produktas turėtų veikti. Šio metodo kiti pavadinimai yra struktūros ir stiklo dėžės testavimas.
- Statinis testavimas . Testeriai tikrina programinės įrangos kodą ir dokumentus, tačiau neįgyvendina programos. Atliekant patikros procesą pradedami statiniai bandymai.
- Dinaminis testavimas . Programinė įranga vykdoma naudojant įvairias įvestis, o testeriai lygina rezultatus su tikėtinu elgesiu šiuo metodu.
- GUI testavimas . Tai patikrina GUI charakteristikas - teksto formatavimą, teksto laukus, mygtukus, sąrašus, išdėstymą, spalvas, šriftus, šrifto dydžius ir pan. GUI testavimas yra daug laiko, o trečiosios šalies įmonės dažnai imasi uždavinių, o ne kūrėjams.
Bandymo lygiai
Tai yra būtina, norint nustatyti silpnumo ir dubliavimo sritis kiekviename programinės įrangos kūrimo ciklo faze.
- Vieneto testavimas . Programuotojai išbando pagrindines kodo dalis, pavyzdžiui, klases, sąsajas ir funkcijas / procedūras. Jie žino, kaip jų kodas turėtų reaguoti, ir gali atlikti koregavimus priklausomai nuo produkcijos.
- Komponentų testavimas . Kiti pavadinimai yra modulio ar programos testavimas. Tai panašus į vienetų bandymus, tačiau jis apima aukštesnį integracijos lygį. Programinės įrangos moduliai išbandomi dėl defektų, kad patikrintų jų individualią funkciją.
- Integravimo testavimas . Tai nustato klaidas, kai integruojami moduliai. Skirtingi integracijos testai yra iš apačios į viršų, iš viršaus į apačią ir funkciniai papildomi.
- Sistemos testavimas. Šiuo metodu projekto komponentai yra išbandomi kaip visuma skirtingose aplinkose. Tai patenka į juodojo dėžės metodą ir yra vienas iš galutinių bandymų šiame procese. Tai nustato, ar sistema veikia taip, kaip turėtų atitikti verslo ir vartotojų poreikius.
- Alfa testavimas . Vidiniai darbuotojai bando programinę įrangą kūrėjo svetainėje simuliuojamoje ar faktinėje aplinkoje. Po to kūrėjai ištaiso klaidas ir kitas problemas.
- Beta testavimas - žinomas kaip lauko testavimas, klientas tikrina produktą savo svetainėje realiomis sąlygomis. Klientas gali pasiūlyti galutinių vartotojų grupei galimybę išbandyti programinę įrangą iš anksto arba beta versijomis. Atsiliepimai apie galimus patobulinimus yra siunčiami kūrėjui.
- Priėmimo bandymai - Taip pat pagal juodojo dėžės testavimo sritį klientas tikrina programinę įrangą, kad sužinotų, ar kūrėjas sukūrė programą norimoms specifikacijoms.
Bandymo tipai
Šie programinės įrangos testai skirti konkretiems tikslams.
- Montavimo testai . Programinės įrangos testavimo inžinierius ir konfigūravimo valdiklis atlieka šį testą, kad galutiniam vartotojui būtų galima įdiegti ir paleisti programą. Ji apima tokias sritis kaip įdiegimo failai, diegimo vietos ir administravimo teisės.
- Plėtros testavimas . Tai užtikrina sinchronizuotų strategijų diapazoną, siekiant aptikti ir išvengti defektų. Tai apima statinę kodo analizę, tarpusavio kodų apžvalgas, atsekamumą ir metrikos analizę. Tikslas yra sumažinti riziką ir taupyti išlaidas.
- Naudojimo testavimas - naudotojo patirtis patenka į šį testą. Jis nustato, ar GUI yra suprojektuotas ir lengvai naudojamas. Tyrimas tikrina testų objektų funkcijų ir emocinių atsakymų tikslumą bei efektyvumą.
- Sanity testas - tai rodo, ar programinė įranga verta laiko ir išlaidų, kad būtų tęsiami tolesni testai. Per daugybė trūkumų ir daugiau agresyvių testų nesilaikoma.
- Dūmų ištyrimas . Dūmų ištyrimas atskleidžia pagrindinius gedimus, kurie yra pakankamai rimti, kad būtų išvengta išleidimo. Kai tai atliekama naudojant naują statinį, jis vadinamas statinio patvirtinimo testu.
- Regresijos testavimas . Kai sistema pakeičiama, regresijos bandymai stebi netikėtą elgesį. Jis nurodo neigiamą poveikį modulius ar komponentus.
- Sunaikinimo testavimas . Testeriai įveda nenormalius įrašus ir supranta programinės įrangos gebėjimą valdyti netikėtą įvestį. Tai parodo programuotojams, kaip patikima programa yra klaidų valdymo.
- Atkūrimo testavimas - kai aparatūros ar kitų funkcijų nepavyksta, šis bandymas rodo, kaip programinė įranga gali atkurti ir tęsti darbą.
- Automatinis testavimas. Tokias funkcijas sunku įdiegti rankiniu būdu. Jis naudoja specialią programinę įrangą testavimui atlikti ir pateikti duomenis apie faktinius ir numatomus rezultatus.
- Suderinamumo testavimas . Programinė įranga turi veikti skirtingose kompiuterių aplinkose, todėl ji patikrina suderinamumą su skirtingomis sistemomis. Pavyzdžiui, ar programinė įranga veikia su įvairiomis operacinėmis sistemomis ir naršyklėmis?
- Veiklos testai - tai nuodugni testas, kuriame nagrinėjama programinės įrangos našumas skirtingais scenarijais. Surinkta informacija apie reagavimą, stabilumą, išteklių paskirstymą ir greitį. Be to, šiame procese dalyvauja pakartotiniai bandymai, tokie kaip apimtis, pajėgumas ir smegenų testavimas.
- Saugumo testavimas . Tai rodo programinės įrangos gebėjimą apsaugoti vartotojų saugumą. Tai reiškia įgaliojimo funkcijas, autentiškumą, konfidencialumą, vientisumą, prieinamumą ir neprieštaravimą.
- Prieinamumo testavimas - tai nėra tas pats, kaip naudingumo testai. Tai lemia tai, kokiu mastu skirtingos gebėjimų vartotojai, įskaitant mokymąsi ir fizines negalias, gali naudoti programinę įrangą.
- Internacionalizacija ir lokalizacijos testavimas . Rezultatai rodo, kaip programinė įranga gali prisitaikyti prie skirtingų kalbų ir regioninių poreikių. Tai apima konkrečių vietovių komponentų pridėjimą ir teksto vertimą.
Programinės įrangos testavimas yra esminė produkto pateikimo į rinką dalis. Ir be testerių, didžioji turima programinė įranga nebus egzistuojanti. Tapkite sertifikuota programinės įrangos testeriu tokiose organizacijose kaip BCS, The Chartered Institute of IT, ISTQB® (Tarptautinė programinės įrangos testavimo kvalifikacijų taryba) ir ASQ (anksčiau Amerikos visuomenės kokybė).