Kompjûters, Software
Testing programma - error detection proses yn 'e software produkt
Yn software ûntwikkeling, in wichtich part fan de produksje proses is basearre op software testen. Wat is it en hoe is it sa'n aktiviteit sil besprekt yn dit artikel.
Wat hjit in test?
Dit ferwiist nei it proses troch it útfieren fan 'e software te spoaren fan de lokaasjes fan de ferkearde wurking fan de koade. Foar de bêste resultaten, opsetsin konstruearre dreech set fan ynfier gegevens. It wichtichste doel fan de ynspeksje is te meitsjen de bêste kâns foar de steuring fan de software. Hoewol't soms teste de ûntwikkele programma kin ferienfâldige ta in rûtine kontrôle fan wurkjen kapasiteit en útfiere de funksjes. Dat sparret tiid, mar wurdt faak beselskippe troch de unreliability fan 'e software, brûker ûnfrede, ensafuorthinne.
effektiviteit
Hoe goed en fluch binne flaters, in wichtige ynfloed op de kosten en de doer fan software ûntwikkeling nedich kwaliteit. Sa, nettsjinsteande it feit dat testers krije in salaris ferskate kearen lytser as de projektûntwikkelders, de kosten fan har tsjinsten is meastal oant 30 - 40% fan de kosten fan it hiele projekt. Dat komt troch it tal personiel, sûnt it sykjen nei de flater - dit is in ûngewoane en hiel dreech proses. Mar ek at de software wurdt trochjûn in respektabele oantal tests, der is gjin 100% garânsje dat de flater sil net barre. Gewoan net witte as se foarkomme. Om stimulearjen testers te kiezen it typen fan testen dy't mear kâns te finen skuld, ferskillende motivaasje ark wurde brûkt: sawol geastlike en materiële.
Oanpak fan it wurk
It optimaal is as te fieren ferskate meganismen om te soargjen dat flaters yn 'e software hat der west fan it begjin ôf. Om do dit, moatte jo soargje it goede arsjitektuer design, heldere termen referinsjeramt, en is it wichtich der foar keazen om oanpassingen yn kommunikaasje, doe't wurk op it projekt is al begûn. Yn dit gefal, it tester oan de taak fan it finen en it sinjalearjen fan in lyts oantal flaters dy't bliuwe yn it einresultaat. Dit sil bewarje sawol tiid en jild.
Wat is de test?
Dat is in wichtich aspekt fan de ynspeksje aktiviteiten, dat is nedich foar it suksesfol opspoaren fan mankeminten fan de koade. Se binne nedich om te kontrolearjen it juste applikaasje. Wat is opnaam yn de test? It bestiet út gegevens en harren oarspronklike wearden dy't moatte jo krije as dêr sadwaande (of tuskenlizzende). Om súkses identifisearje problemen en inconsistencies, toetsen moatte wêze nei it algoritme waard ûntwikkele, mar net begjinne programmearring. It is winsklik om te brûken ferskate oanpakken om in rûzing fan it nedich gegevens. Yn dit gefal, it fergrutsjen fan de kâns op detecting in flater omdat jo kinne ûndersykje de koade fan in oar perspektyf. Komplekse tests moat soargje kinne de eksterne effekten fan it ôfmakke software produkten, krektas syn wurk algoritmen. Fan bysûnder belang en soargje marzjinale ûntaarde gefallen. Sa, yn 'e praktyk fan flaters kinne faak docht bliken dat de syklus werkt op ien of mear kearen minder as pland. Ek wichtich is de kompjûter testen, troch dêr't jo kinne oft it winske resultaat op ferskillende masines. Dit is nedich om der wis fan dat de software sil wurkje op alle kompjûters. Boppedat, de computer test, dêr't de ûntjouwing sil útfierd wurde, is wichtich yn 'e oprjochting fan multi-platfoarm ûntwikkeling.
Troubleshooting Arts
Programs faak rjochte te wurkjen mei enoarme gegevens sets. Is it nedich om te meitsjen hielendal? No. Wiidferspraat krige de praktyk fan "miniaturization" fan it programma. Yn dat gefal is der in ridlike reduksje fan gegevens folume as ferlike mei dat te brûkt wurde. Litte we ris in foarbyld: der is in programma, dat soarget foar in matriks fan maat 50x50. Mei oare wurden - jo moatte sels yn 'e 2500 wearden. It is wiswier mooglik, mar it sil in hiele lange tiid. Mar om te testen de funksjonaliteit, de software krijt in matriks waans diminsje is 5x5. Om dat dogge moatte ynfiere mear as 25 wearden. As, yn dit gefal, in normale, flater-frij operaasje, dan betsjut dat alles is yn oarder. Hoewol't der falkûlen dy't lizze yn it feit dat mei miniaturization situaasje komt, resultearret yn feroarje wurdt ymplisyt en tydlik ferdwine. It is ek hiel seldsum, mar dochs bart is dat der nije bugs.
doelen neistribbe
Testen is net in maklike taak fanwege it feit dat dit proses net amenable te formalization yn syn hiele hear en fear. Grutte programma hast nea hawwe de nedige accurate benchmark. Dêrom, as in paadwizer mei help fan in oantal yndirekte gegevens, dy't lykwols, kin net folslein oerien mei de eigenskippen en funksjes fan software ûntwikkeling dy't debugged. Boppedat, se moatte wurde selektearre sadat de goede resultaat berekkene foar hoe't de software produkt sil wurde hifke. As jo net foarút, it is besykjend te beskôgje alles oer, en as it resultaat fan 'e masine krijt fan it ferwachte oanbod, dan sil wurde makke in ferkeard beslút, dat alles goed is.
Kontrolearje ûnder ferskillende kondysjes
As regel, programma testen optreedt yn dielen dy't nedich binne foar it minimum test funksjonaliteit ta in beheinde mjitte. Aktiviteiten útfierd mei de feroaring fan 'e parameters, en ek harren arbeidsomstannichheden. De test proses kinne ûnderferdield wurde yn trije stadia:
- Kontrolearje ûnder normale omstannichheden. Yn dit gefal we teste de basis funksjonaliteit fan de ûntwikkele software. It resultaat moat oerien mei de ferwachte.
- Kontrolearje yn ekstreme omstannichheden. Yn dy gefallen, as synonym foar de grins gegevens, dy't mooglik negative gefolgen hawwe de prestaasjes fan 'e makke software. As foarbyld, wy wurkje mei in ekstreem grut of lyts oantallen of sels folsleine ûntbrekken fan ynformaasje krigen.
- Kontrolearjen yn útsûnderlike situaasjes. It giet om it gebrûk fan gegevens dy't bûten behanneling. Yn sokke situaasjes is it striemin doe't de software docht se sa nuttich foar de berekkening en jout in plausibele resultaat. Soarch moat nommen dat yn sokke gefallen is der in ôfwizing fan alle gegevens, dat kin net ferwurke korrekt. It is ek nedich om te foarsjen foar it ynformearjen fan de brûker deroer
Testing: Soarten
Meitsje software sûnder fersin is hiel dreech. Dat freget om in grut bedrach fan de tiid. Om in goed produkt wurdt faak brûkt twa soarten testing: "Alpha" en "Beta". Wat binne se? Wannear't minsken prate oer it alpha testen, dan betsjut it resinsje te fierd himsels yn 'e steat fan' e ûntwikkeling "laboratoarium" betingsten. Dit is it lêste stadium fan testen foar it programma wurdt oerdroegen oan ein-brûkers. Dêrom, ûntwikkelers besykje te draaien om it maksimum. Foar gemak fan funksjonearjen, gegevens kinne oanmeld wêze om in gronology fan problemen en harren oplossings. Under de beta test om te ferstean de oanfier fan software foar in beheind oantal brûkers, sadat se kinne benutten it programma en identifisearje de flaters dy't jo ha mist. In bysûnder skaaimerk yn dit gefal is it feit dat faak de software wurdt net brûkt foar syn beëage doel. Fanwege dizze steuring wurdt sinjalearre wurde dêr't der wie neat foar sjoen. Dat is hiel normaal en soargen oer it is net nedich.
test oplevering
As de foarige stappen binne mei sukses ôfsletten, it bliuwt te fieren akseptaasje testen. Hy yn dit gefal wurdt in mere formaliteit. Tidens dizze test komt befêstiging dat gjin ekstra problemen binne fûn en de software kin wurde útbrocht op 'e merk. De wichtichste sil de ein resultaat, it nauwer dat sil ferifiearre wurde. Soarch moat wurde nommen om te soargjen dat alle stappen binne ôfmakke mei súkses. Hjir is it hifkjen proses as gehiel. No litte wy ferdjipje har yn de technyske details en praat oer sa'n nuttich ynstrumint, as de test programma. Wat se binne en wannear brûkt?
kompjûter-ūnderstipe testen
Eartiids waard tocht dat de dynamyske analyze fan ûntwikkele software - it is te swier oanpak dy't effektyf brûkt om spoaren mankeminten. Mar fanwege de tanimmende kompleksiteit en it folume fan de programma ferskynden tsjinoerstelde werjefte. Automatisearre testen wurdt brûkt dêr't de meast wichtige spearpunten binne effisjinsje en feiligens. En hja moatte wêze ûnder alle ynbring. As foarbyld, de programma dêr't it gaadlik is dat sokke testen, ûnder oaren de neikommende: netwurk protokollen, webserver, sandboxing. Wy bliuwe te sjen nei in pear fan gebrûk, dat brûkt wurde kin foar sokke aktiviteiten. As jo ynteressearre binne yn it frije testing programma, de kwaliteit is dreech te finen ûnder har. Mar der wurde kreake "pirated" ferzjes fan de goed fêstige projekten, dus jo kinne ferwize nei harren tsjinsten.
avalanche
Dit ark helpt te spoaren mankeminten wurde testen programma 's yn it dynamyske analyze modus. It sammelet gegevens en analysearret de prestaasjes fan it spoar ûntwurpen foarwerp. De tester wurdt jûn in set fan yngongen dy't feroarsaakje flater of bypass de besteande set fan beheinings. Mei tank oan in goede test fan de algoritme ûntwikkele troch in grut oantal mooglike situaasjes. It programma krijt in oare set fan ynfier gegevens, dy't tastean om huchelje in grut tal situaasjes en skeppe betingsten dêr't de meast alle gedachten is it foarkommen fan in steuring. In wichtich foardiel fan it programma is it brûken fan heuristyske metrike. As der in probleem, dan de applikaasje flater is tige wierskynlik. Mar dit programma hat beheinings sa as mar ien check markearre ynfiertriem socket of triem. By it útoefenjen fan in operaasje lykas testen programma sille befetsje detaillearre ynformaasje oer de problemen mei de null oanwizer, ûneinige loops, ferkearde adressen of storingen as gefolch fan it gebrûk fan biblioteken. Fansels, dit is net in folsleine list fan ûntdutsen flaters en harren ienige mienskiplike foarbylden. Korrizjearje tekoartkommings, oe heden, hawwe ûntwikkelers - automatisearre middels binne net geskikt foar dizze doelen.
Klee
It is in goede programma foar it testen fan ûnthâld. It kin ûnderskeppe likernôch 50 systeem petearen en in grut oantal firtuele prosessen dus terjochtsteld yn parallel of apart. Mar yn it algemien, it programma is net op syk nei wat fertochte plakken, en ferwurket de maksimale mooglike hoemannichte koade en analyzes brûkt gegevens paden. Fanwege dit, de test programma hinget ôf fan de grutte fan it foarwerp. By it kontrolearen de weddenskip wurdt pleatst op symboalyske prosessen. Se binne ien fan de mooglike manieren te fieren taken yn in programma dat wurdt hifke. Mei tank oan 'e parallel eksploitaasje mooglik is om te analysearjen op in grut tal farianten fan it wurk fan' e test applikaasje. Foar eltse paad fan ynbring gegevens sets wurde opslein neidat syn test, dy't begûn mei de kontrôle. Dêrby moat opmurken wurde dat testen programma brûke Klee helpt te identifisearjen in grut oantal fariaasjes, dat moat net wêze. It kin fine problemen sels yn applikaasjes dy't ûntwikkele foar tsientallen jierren.
Similar articles
Trending Now