Mis on konfiguratsiooni testimine? Näidiskatsed

⚡ Nutikas kokkuvõte

Konfiguratsiooni testimine käitab rakendust mitme tarkvara ja riistvara kombinatsiooni peal, et meeskond saaks kinnitada, et funktsionaalsed nõuded kehtivad endiselt kõikjal, ning tuvastada väljaandmiseks optimaalse konfiguratsiooni.

  • 🧩 Reguleerimisala: OperaKonfiguratsioonideks loetakse nii süsteemid, brauserid, andmebaasi versioonid, draiverid, mälu kui ka välisseadmed.
  • 📐 Kaks liiki: Tarkvara konfiguratsiooni testimine hõlmab platvorme ja värskendusi; riistvara konfiguratsiooni testimine hõlmab ühendatud seadmeid.
  • 🗂️ Maatriks kõigepealt: Koostage kombinatsioonimaatriks ja seejärel prioriseerige see, sest ammendav katvus on liiga suur takistus.
  • 🖥️ Virtuaalsed masinad: Hetktõmmised asendavad füüsilistes testmasinates korduvaid installimis- ja desinstallimistsükleid.
  • 🏦 Töötatud näide: Pangandusrakendus ja selle rahatähtede lugemise masina mudelid illustreerivad riistvara testjuhtumeid.
  • ???? Tahtlik ebaõnnestumine: Eeltingimuse tahtlik eemaldamine paljastab defektid, mida täielikult ettevalmistatud labor varjab.

Konfiguratsiooni testimine tarkvara ja riistvara kombinatsioonide vahel

Konfiguratsiooni testimine

Konfiguratsiooni testimine on tarkvara testimise tehnika, mille puhul rakendust testitakse mitme tarkvara ja riistvara kombinatsiooniga, et hinnata funktsionaalseid nõudeid ja leida optimaalsed konfiguratsioonid, mille korral rakendus töötab ilma defektide või vigadeta.

Konfiguratsioon on mis tahes kombinatsioon, mida toode peab toetama: operatsioonisüsteemi versioon, brauser, andmebaasi versioon, draiver, mälumaht või ühendatud välisseade. Tasub see eraldi eristada. ühilduvuse testimine, mis küsib, kas toode eksisteerib koos muu tarkvara ja platvormidega. Konfiguratsiooni testimine esitab kitsama küsimuse: kas sama järk käitub ikka õigesti, kui selle enda toetatud seadistus muutub?

Konfiguratsiooni testimise näide

Vaatleme töötava näitena töölauarakendust.

Töölauarakendused on tavaliselt loodud kahe- või kolmetasandilisena. Võtame näiteks kolmetasandilise töölauarakenduse, mis on välja töötatud ASP.NET, mis koosneb kliendist, äriloogika serverist ja andmebaasi serverist, kusjuures iga komponent toetab allpool loetletud platvorme.

  • Kliendiplatvorm – Windows XP, Windows 7, Windows 8 ja nii edasi
  • Serveriplatvorm – Windows 2008 server, Windows Server 2008 R2, Windows 2012 R2 server
  • Andmebaas – SQL Server 2008, SQL Server 2008 R2, SQL Server 2012 jne

Testija peab klienti, serverit ja andmebaasi koos nendel platvormidel ja andmebaasi versioonidel harjutama, et kinnitada rakenduse korrektset toimimist ega tõrgeteta üheski toetatud kombinatsioonis.

Konfiguratsiooni testimine ei piirdu ainult tarkvaraga. See kehtib ka riistvara kohta, mistõttu riistvara poolt nimetatakse riistvara konfiguratsiooni testimiseks: printerid, skannerid, veebikaamerad ja sarnased seadmed, mida testitav rakendus peab toetama. Allolev maatriks näitab, kuidas need kombinatsioonid enne testi käivitamise algust paigutatakse.

Kliendi, serveri ja andmebaasi kombinatsioonide konfiguratsiooni testimise maatriks

Konfiguratsiooni testimise eeltingimused

Enne mis tahes projekti konfiguratsioonitestide alustamist peavad olema täidetud kolm eeltingimust.

  • Tarkvara- ja riistvarakonfiguratsioonide erinevaid kombinatsioone loetleva maatriksi loomine
  • Nende konfiguratsioonide prioriseerimine, kuna igaühe testimine pole realistlik
  • Iga konfiguratsiooni testimine selle prioriseerimise järgi määratud järjekorras

Konfiguratsiooni testimise eesmärgid

Konfiguratsiooni testimise eesmärk on saavutada järgmine.

  • Rakenduse vastavuse valideerimine selle konfigureeritavusnõuetele
  • Põhjustada tahtlikult vigu, et esile tuua defekte, mida tavapärane testimine ei märka, näiteks muutes piirkondlikke seadeid, nagu ajavöönd, keel või kuupäevavorming.
  • Määrake testitava rakenduse optimaalne konfiguratsioon
  • Analüüsige süsteemi jõudlust riistvararessursside muutumise ajal, näiteks koormuse tasakaalustajate lisamine, mälu suurendamine või vähendamine või erinevate printerimudelite ühendamine
  • Analüüsige süsteemi tõhusust prioriteetide suhtes, hinnates, kui hästi testid kasutasid olemasolevaid ressursse optimaalse konfiguratsiooni saavutamiseks.
  • Kontrollige süsteemi geograafiliselt hajutatud keskkonnas, näiteks serveriga ühes ja klientidega teises asukohas, kus süsteem peaks töötama olenemata kohalikest süsteemisätetest.
  • Kontrollige, kui kergesti defektid konfiguratsiooni muutmisel reprodutseeruvad
  • Veenduge, et rakenduse üksused jäävad alles tracteostatav nõuetekohase dokumentatsiooni ja selgelt identifitseeritavate versioonikirjete kaudu
  • Veenduge, et rakenduse üksused jäävad kogu protsessi vältel hallatavaks tarkvaraarenduse elutsükkel

Kuidas konfiguratsiooni testida

Strateegia sõltub sellest, kumb kahest konfiguratsiooni testimise tüübist on ulatusse kuuluv.

  • Tarkvara konfiguratsiooni testimine
  • Riistvara konfiguratsiooni testimine

Tarkvara konfiguratsiooni testimine

Tarkvara konfiguratsiooni testimine käivitab testitava rakenduse mitme operatsioonisüsteemi, tarkvarauuenduste ja sõltuvusversioonide suhtes. See on aeganõudev, sest iga voor tähendab kaasatud tarkvara installimist ja desinstallimist.

Levinud viis selle kulu vähendamiseks on testida virtuaalsed masinadVirtuaalmasin on tarkvarasse installitud keskkond, mis käitub nagu füüsiline riistvara, seega töötab testija nii, nagu oleks see päris masinal, samas kui konfiguratsioon ise on ühekordselt kasutatav. Virtuaalmasinad simuleerivad tegelikke konfiguratsioone piisavalt täpselt enamiku funktsionaalsete kontrollide jaoks.

Rakenduse installimise ja desinstallimise asemel mitmesse füüsilisse masinasse installitakse see virtuaalmasinasse ja testimine jätkub sealt. Mitme virtuaalmasina paralleelne käitamine, millest igaüks taastatakse hetktõmmisest, lihtsustab tööd märkimisväärselt.

Tarkvara konfiguratsiooni testimine võib tavaliselt alata siis, kui

  • Testitavad konfigureeritavuse nõuded on täpsustatud
  • . testimiskeskkond on valmis
  • Testimismeeskond on saanud konfiguratsiooni testimise koolituse
  • Välja antud järk on läbinud ühik- ja integratsioonitestimise

Tüüpiline katsestrateegia on funktsionaalsete testide komplekti käivitamine iga tarkvarakonfiguratsiooni ulatuses ja rakenduse käitumise kontrollimine ettenähtud viisil, ilma vigadeta. Teine strateegia on testide tahtlik ebaõnnestumine ja süsteemi tõhusa toimimise kontrollimine.

Näide:

Võtame näiteks pangandusrakenduse, mida tuleb testida mitmes brauseris. Keskkonnas, kus kõik eeltingimused on täidetud, võib see läbida ühiku- ja integratsiooni testimine katselaboris.

Kliendi saidile installituna võib sama rakendus nurjuda, kuna nendel masinatel puuduvad tarkvarauuendused või sõltuvusversioonid, millele rakendus otseselt või kaudselt tugineb. Testide tahtlik nurjumine mõne konfigureeritavuse nõude eemaldamise ja seejärel uue testimise teel paljastab selle defektiklassi enne, kui klient selle leiab. Allolev ekraanipilt näitab sellise konfiguratsioonist sõltuva rikke taasesitamist kontrollitud keskkonnas.

Pangandusrakendus ei tööta kliendiarvutis, kuna eeltingimused puuduvad.

Riistvara konfiguratsiooni testimine

Riistvara konfiguratsiooni testimine toimub tavaliselt laboris, kus hoitakse füüsilisi masinaid, mille külge on ühendatud erinev riistvara.

Iga kord, kui versioon välja antakse, installitakse tarkvara igale neist masinatest ja igaühel käivitatakse testimiskomplekt, et kinnitada rakenduse toimimist lisatud seadmega.

See ülesanne nõuab märkimisväärset pingutust: tarkvara installimine igale masinale, riistvara ühendamine ja seejärel komplekti käsitsi või automatiseerimine.

Samuti tuleb täpsustada testitava riistvara tüüp. Arvutiriistvara ja välisseadmeid on nii palju, et kõigi katmine on võimatu, seega analüüsib testija, millistele seadmetele kasutajaskond tegelikult tugineb, ja testib vastavalt sellele prioriteedile.

Katsejuhtumite näidised

Vaatleme pangandussituatsiooni, kus riistvara ühilduvust testitakse. Rahatähtede lugemise masinaga ühendatud pangandusrakendus peab töötama mitme mudeliga, näiteks Rolex, Strob, Maxsell ja StoK.

Proov testjuhtumid rahatähtede loendamismasina jaoks on oluline järgmine.

  • Kontrollige rakenduse ja Rolexi mudeli vahelist ühendust, kui eeltingimused EI OLE installitud
  • Kui eeltingimused on installitud, kontrollige rakenduse ja Rolexi mudeli vahelist ühendust.
  • Veenduge, et süsteem loendab rahatähti õigesti
  • Kontrollige, kuidas süsteem vealoendusest teatab
  • Kontrollige võltsitud rahatähtede käitlemist
  • Kontrollige reageerimisaegu
  • Veenduge, et võltsitud rahatähed on tuvastatud

Need juhtumid hõlmavad ühte mudelit ja iga allesjäänud turul olev mudel tuleb seadistada katselaborisse ja testida samamoodi, mis on ettevõttesiseselt harva otstarbekas. Riistvara konfiguratsiooni testimise tellimine sellele spetsialiseerunud organisatsioonilt on sageli realistlikum variant.

KKK

Konfiguratsiooni testimine muudab toote enda toetatud seadistust – operatsioonisüsteemi, andmebaasi versiooni, ühendatud seadet – ja käivitab komplekti uuesti. Ühilduvustestimine kontrollib, kas toode eksisteerib koos välise tarkvara, platvormide ja brauseritega, millega see peab koos töötama.

Nii palju, kui risk õigustab. Kasutusanalüütika määrab järjekorra: kõigepealt käsitletakse platvormi, brauseri ja seadme kombinatsioone, mida enamik kasutajaskonnast kasutab, seejärel minimaalselt toetatud spetsifikatsioone.

Tavaliselt on tegemist kvaliteedikontrolli meeskonnaga, keda toetavad süsteemiadministraatorid, kes keskkondi loovad. Riistvararohkete toodete puhul vastutab füüsilise seadme eest spetsiaalne laborimeeskond või allhanke korras spetsialist.

Virtuaalmasinate ja konteinerplatvormid tarkvara seadistamiseks, seadmelaborid või pilveseadmete farmid riistvara ja brauserite jaoks ning testi automatiseerimine raamistik sama komplekti taasesitamiseks igas konfiguratsioonis.

Kombinatoorne plahvatus, litsentside ja füüsiliste seadmete maksumus, aeglane keskkonna loomine ja defektid, mis reprodutseeruvad ainult ühes konfiguratsioonis. Prioriseerimine ja virtualiseerimine lahendavad enamiku neist.

Pärast ühik- ja integratsioonitestimise läbimist ning tavaliselt koos süsteemitestimisega. See kordub enne iga suuremat väljalaset, sest uus operatsioonisüsteemi või draiveri versioon võib varasemad tulemused kehtetuks muuta.

Mudelid järjestavad konfiguratsioonikombinatsioone tegeliku kasutuse ja ajalooliste defektide andmete põhjal, seega kärbitakse maatriksit kõrgeima riskiga ridadeni. Samuti rühmitavad nad tõrkeid, et näidata, millistel on üks konfiguratsioonipõhjus.

Jah. See loob parameetritega testimise tugistruktuuri, keskkonna ettevalmistamise skriptid ja CI-tööde definitsioonid, mis käitavad ühte komplekti paljudes konfiguratsioonides. Maatriks ise peab ikkagi pärinema toetatud platvormide loendist.

Võta see postitus kokku järgmiselt: