Поддерживать
www.wikidata.ru-ru.nina.az
Testi rovanie progra mmnogo obespe che niya process issledovaniya ispytaniya programmnogo produkta imeyushij svoej celyu proverku sootvetstviya mezhdu realnym povedeniem programmy i eyo ozhidaemym povedeniem na konechnom nabore testov vybrannyh opredelyonnym obrazom ISO IEC TR 19759 2005 Opredeleniya testirovaniyaV raznoe vremya i v razlichnyh istochnikah testirovaniyu davalis razlichnye opredeleniya v tom chisle process vypolneniya programmy s celyu nahozhdeniya oshibok intellektualnaya disciplina imeyushaya celyu poluchenie nadezhnogo programmnogo obespecheniya bez izlishnih usilij na ego proverku tehnicheskoe issledovanie programmy dlya polucheniya informacii o eyo kachestve s tochki zreniya opredelyonnogo kruga zainteresovannyh lic angl utochnit proverka sootvetstviya mezhdu realnym povedeniem programmy i eyo ozhidaemym povedeniem na konechnom nabore testov vypolnennyh opredelyonnym obrazom process nablyudeniya za vypolneniem programmy v specialnyh usloviyah i vyneseniya na etoj osnove ocenki kakih libo aspektov eyo raboty process imeyushij celyu vyyavlenie situacij v kotoryh povedenie programmy yavlyaetsya nepravilnym nezhelatelnym ili ne sootvetstvuyushim specifikacii process soderzhashij v sebe vse aktivnosti zhiznennogo cikla kak dinamicheskie tak i staticheskie kasayushiesya planirovaniya podgotovki i ocenki programmnogo produkta i svyazannyh s etim rezultatov rabot s celyu opredelit chto oni sootvetstvuyut opisannym trebovaniyam pokazat chto oni podhodyat dlya zayavlennyh celej i dlya opredeleniya defektov IstoriyaPervye programmnye sistemy razrabatyvalis v ramkah programm nauchnyh issledovanij ili programm dlya nuzhd ministerstv oborony Testirovanie takih produktov provodilos strogo formalizovanno s zapisyu vseh testovyh procedur testovyh dannyh poluchennyh rezultatov Testirovanie vydelyalos v otdelnyj process kotoryj nachinalsya posle zaversheniya kodirovaniya no pri etom kak pravilo vypolnyalos tem zhe personalom V 1960 h mnogo vnimaniya udelyalos ischerpyvayushemu testirovaniyu kotoroe dolzhno provoditsya s ispolzovaniem vseh putej v kode ili vseh vozmozhnyh vhodnyh dannyh Bylo otmecheno chto v etih usloviyah polnoe testirovanie programmnogo obespecheniya nevozmozhno potomu chto vo pervyh kolichestvo vozmozhnyh vhodnyh dannyh ochen veliko vo vtoryh sushestvuet mnozhestvo putej v tretih slozhno najti problemy v arhitekture i specifikaciyah Po etim prichinam ischerpyvayushee testirovanie bylo otkloneno i priznano teoreticheski nevozmozhnym V nachale 1970 h godov testirovanie programmnogo obespecheniya oboznachalos kak process napravlennyj na demonstraciyu korrektnosti produkta ili kak deyatelnost po podtverzhdeniyu pravilnosti raboty programmnogo obespecheniya V zarozhdavshejsya programmnoj inzhenerii verifikaciya PO znachilas kak dokazatelstvo pravilnosti Hotya koncepciya byla teoreticheski perspektivnoj na praktike ona trebovala mnogo vremeni i byla nedostatochno vseobemlyushej Bylo resheno chto dokazatelstvo pravilnosti neeffektivnyj metod testirovaniya programmnogo obespecheniya Odnako v nekotoryh sluchayah demonstraciya pravilnoj raboty ispolzuetsya i v nashi dni naprimer priyomo sdatochnye ispytaniya Vo vtoroj polovine 1970 h testirovanie predstavlyalos kak vypolnenie programmy s namereniem najti oshibki a ne dokazat chto ona rabotaet Uspeshnyj test eto test kotoryj obnaruzhivaet ranee neizvestnye problemy Dannyj podhod pryamo protivopolozhen predydushemu Ukazannye dva opredeleniya predstavlyayut soboj paradoks testirovaniya v osnove kotorogo lezhat dva protivopolozhnyh utverzhdeniya s odnoj storony testirovanie pozvolyaet ubeditsya chto produkt rabotaet horosho a s drugoj vyyavlyaet oshibki v programmah pokazyvaya chto produkt ne rabotaet Vtoraya cel testirovaniya yavlyaetsya bolee produktivnoj s tochki zreniya uluchsheniya kachestva tak kak ne pozvolyaet ignorirovat nedostatki programmnogo obespecheniya V 1980 e gody testirovanie rasshirilos takim ponyatiem kak preduprezhdenie defektov Proektirovanie testov naibolee effektivnyj iz izvestnyh metodov preduprezhdeniya oshibok V eto zhe vremya stali vyskazyvatsya mysli chto neobhodima metodologiya testirovaniya v chastnosti chto testirovanie dolzhno vklyuchat proverki na vsem protyazhenii cikla razrabotki i eto dolzhen byt upravlyaemyj process V hode testirovaniya nado proverit ne tolko sobrannuyu programmu no i trebovaniya kod arhitekturu sami testy Tradicionnoe testirovanie sushestvovavshee do nachala 1980 h otnosilos tolko k skompilirovannoj gotovoj sisteme sejchas eto obychno nazyvaetsya sistemnoe testirovanie no v dalnejshem testirovshiki stali vovlekatsya vo vse aspekty zhiznennogo cikla razrabotki Eto pozvolyalo ranshe nahodit problemy v trebovaniyah i arhitekture i tem samym sokrashat sroki i byudzhet razrabotki V seredine 1980 h poyavilis pervye instrumenty dlya avtomatizirovannogo testirovaniya Predpolagalos chto kompyuter smozhet vypolnit bolshe testov chem chelovek i sdelaet eto bolee nadyozhno Ponachalu eti instrumenty byli krajne prostymi i ne imeli vozmozhnosti napisaniya scenariev na skriptovyh yazykah V nachale 1990 h godov v ponyatie testirovanie stali vklyuchat planirovanie proektirovanie sozdanie podderzhku i vypolnenie testov i testovyh okruzhenij i eto oznachalo perehod ot testirovaniya k obespecheniyu kachestva ohvatyvayushego ves cikl razrabotki programmnogo obespecheniya V eto vremya nachinayut poyavlyatsya razlichnye programmnye instrumenty dlya podderzhki processa testirovaniya bolee prodvinutye sredy dlya avtomatizacii s vozmozhnostyu sozdaniya skriptov i generacii otchetov sistemy upravleniya testami PO dlya provedeniya nagruzochnogo testirovaniya V seredine 1990 h godov s razvitiem Interneta i razrabotkoj bolshogo kolichestva veb prilozhenij osobuyu populyarnost stalo poluchat gibkoe testirovanie po analogii s gibkimi metodologiyami programmirovaniya Standarty otnosyashiesya k testirovaniyuIEEE 829 2008 IEEE Standard for Software and System Test Documentation ANSI IEEE Std 1008 1987 IEEE Standard for Software Unit Testing ISO IEC IEEE 29119 1 2013 Software and systems engineering Software testing Part 1 Concepts and definitions ISO IEC IEEE 29119 2 2013 Software and systems engineering Software testing Part 2 Test processes ISO IEC IEEE 29119 3 2013 Software and systems engineering Software testing Part 3 Test documentationKlassifikacii vidov i metodov testirovaniyaSushestvuet neskolko priznakov po kotorym prinyato proizvodit klassifikaciyu vidov testirovaniya Obychno vydelyayut sleduyushie Po obektu testirovaniyaFunkcionalnoe testirovanie Testirovanie proizvoditelnosti Nagruzochnoe testirovanie Stress testirovanie Testirovanie stabilnosti Yuzabiliti testirovanie Testirovanie bezopasnosti Testirovanie lokalizaciiPo znaniyu vnutrennego stroeniya sistemyTestirovanie chyornogo yashika Testirovanie belogo yashikaPo stepeni avtomatizaciiRuchnoe testirovanie Avtomatizirovannoe testirovaniePo stepeni izolirovannostiTestirovanie komponentov Integracionnoe testirovanie Sistemnoe testirovaniePo vremeni provedeniya testirovaniya istochnik ne ukazan 3490 dnej Alfa testirovanie Dymovoe testirovanie angl smoke testing new feature testing Regressionnoe testirovanie Beta testirovaniePo priznaku pozitivnosti scenarievPo stepeni podgotovlennosti k testirovaniyuTestirovanie po dokumentacii formalnoe testirovanie Intuitivnoe testirovanie angl ad hoc testing Urovni testirovaniyaTestirovanie komponentov testiruetsya minimalno vozmozhnyj dlya testirovaniya komponent naprimer otdelnyj klass ili funkciya Chasto testirovanie komponentov osushestvlyaetsya razrabotchikami programmnogo obespecheniya Integracionnoe testirovanie testiruyutsya interfejsy mezhdu komponentami podsistemami ili sistemami Pri nalichii rezerva vremeni na dannoj stadii testirovanie vedyotsya iteracionno s postepennym podklyucheniem posleduyushih podsistem Sistemnoe testirovanie testiruetsya integrirovannaya sistema na eyo sootvetstvie trebovaniyam Alfa testirovanie imitaciya realnoj raboty s sistemoj shtatnymi razrabotchikami libo realnaya rabota s sistemoj potencialnymi polzovatelyami zakazchikom Chashe vsego alfa testirovanie provoditsya na rannej stadii razrabotki produkta no v nekotoryh sluchayah mozhet primenyatsya dlya zakonchennogo produkta v kachestve vnutrennego priyomochnogo testirovaniya Inogda alfa testirovanie vypolnyaetsya pod otladchikom ili s ispolzovaniem okruzheniya kotoroe pomogaet bystro vyyavlyat najdennye oshibki Obnaruzhennye oshibki mogut byt peredany testirovshikam dlya dopolnitelnogo issledovaniya v okruzhenii podobnom tomu v kotorom budet ispolzovatsya programma Beta testirovanie v nekotoryh sluchayah vypolnyaetsya rasprostranenie predvaritelnoj versii v sluchae proprietarnogo programmnogo obespecheniya inogda s ogranicheniyami po funkcionalnosti ili vremeni raboty dlya nekotoroj bolshej gruppy lic s tem chtoby ubeditsya chto produkt soderzhit dostatochno malo oshibok Inogda beta testirovanie vypolnyaetsya dlya togo chtoby poluchit obratnuyu svyaz o produkte ot ego budushih polzovatelej Chasto dlya svobodnogo i otkrytogo programmnogo obespecheniya stadiya alfa testirovaniya harakterizuet funkcionalnoe napolnenie koda a beta testirovaniya stadiyu ispravleniya oshibok Pri etom kak pravilo na kazhdom etape razrabotki promezhutochnye rezultaty raboty dostupny konechnym polzovatelyam Staticheskoe i dinamicheskoe testirovanieOpisannye nizhe tehniki testirovanie belogo yashika i testirovanie chyornogo yashika predpolagayut chto kod ispolnyaetsya i raznica sostoit lish v toj informacii kotoroj vladeet testirovshik V oboih sluchayah eto dinamicheskoe testirovanie Pri staticheskom testirovanii programmnyj kod ne vypolnyaetsya analiz programmy proishodit na osnove ishodnogo koda kotoryj vychityvaetsya vruchnuyu libo analiziruetsya specialnymi instrumentami V nekotoryh sluchayah analiziruetsya ne ishodnyj a promezhutochnyj kod takoj kak bajt kod ili kod na MSIL Takzhe k staticheskomu testirovaniyu otnosyat testirovanie trebovanij specifikacij dokumentacii Regressionnoe testirovanieOsnovnaya statya Regressionnoe testirovanie Posle vneseniya izmenenij v ocherednuyu versiyu programmy regressionnye testy podtverzhdayut chto sdelannye izmeneniya ne povliyali na rabotosposobnost ostalnoj funkcionalnosti prilozheniya Regressionnoe testirovanie mozhet vypolnyatsya kak vruchnuyu tak i sredstvami avtomatizacii testirovaniya Testovye scenariiTestirovshiki ispolzuyut testovye scenarii na raznyh urovnyah kak v komponentnom tak i v integracionnom i sistemnom testirovanii Testovye scenarii kak pravilo pishutsya dlya proverki komponentov v kotoryh naibolee vysoka veroyatnost poyavleniya otkazov ili vovremya ne najdennaya oshibka mozhet byt dorogostoyashej Testirovanie belogo yashika chyornogo yashika i serogo yashika V zavisimosti ot dostupa razrabotchika testov k ishodnomu kodu testiruemoj programmy razlichayut testirovanie po strategii belogo yashika i testirovanie po strategii chyornogo yashika Pri testirovanii belogo yashika takzhe govoryat prozrachnogo yashika razrabotchik testa imeet dostup k ishodnomu kodu programm i mozhet pisat kod kotoryj svyazan s bibliotekami testiruemogo programmnogo obespecheniya Eto tipichno dlya komponentnogo testirovaniya pri kotorom testiruyutsya tolko otdelnye chasti sistemy Ono obespechivaet to chto komponenty konstrukcii rabotosposobny i ustojchivy do opredelyonnoj stepeni Pri testirovanii belogo yashika ispolzuyutsya metriki pokrytiya koda ili mutacionnoe testirovanie Pri testirovanii chyornogo yashika testirovshik imeet dostup k programme tolko cherez te zhe interfejsy chto i zakazchik ili polzovatel libo cherez vneshnie interfejsy pozvolyayushie drugomu kompyuteru libo drugomu processu podklyuchitsya k sisteme dlya testirovaniya Naprimer testiruyushij komponent mozhet virtualno nazhimat klavishi ili knopki myshi v testiruemoj programme s pomoshyu mehanizma vzaimodejstviya processov s uverennostyu v tom vse li idyot pravilno chto eti sobytiya vyzyvayut tot zhe otklik chto i realnye nazhatiya klavish i knopok myshi Kak pravilo testirovanie chyornogo yashika vedyotsya s ispolzovaniem specifikacij ili inyh dokumentov opisyvayushih trebovaniya k sisteme Obychno v dannom vide testirovaniya kriterij pokrytiya skladyvaetsya iz pokrytiya struktury vhodnyh dannyh pokrytiya trebovanij i pokrytiya modeli v testirovanii na osnove modelej Pri testirovanii serogo yashika razrabotchik testa imeet dostup k ishodnomu kodu no pri neposredstvennom vypolnenii testov dostup k kodu kak pravilo ne trebuetsya Esli alfa i beta testirovanie otnosyatsya k stadiyam do vypuska produkta a takzhe neyavno k obyomu testiruyushego soobshestva i ogranicheniyam na metody testirovaniya testirovanie belogo yashika i chyornogo yashika imeet otnoshenie k sposobam kotorymi testirovshik dostigaet celi Beta testirovanie v celom ogranicheno tehnikoj chyornogo yashika hotya postoyannaya chast testirovshikov obychno prodolzhaet testirovanie belogo yashika parallelno beta testirovaniyu Takim obrazom termin beta testirovanie mozhet ukazyvat na sostoyanie programmy blizhe k vypusku chem alfa ili mozhet ukazyvat na nekotoruyu gruppu testirovshikov i process vypolnyaemyj etoj gruppoj To est testirovshik mozhet prodolzhat rabotu po testirovaniyu belogo yashika hotya programma uzhe beta stadii no v etom sluchae on ne yavlyaetsya chastyu beta testirovaniya Pokrytie koda Osnovnaya statya Pokrytie koda Pokrytie koda pokazyvaet procent ishodnogo koda programmy kotoryj byl vypolnen pokryt v processe testirovaniya Po sposobam izmereniya vydelyayut pokrytie operatorov pokrytie uslovij pokrytie putej pokrytie funkcij i dr Sm takzheFormalnaya verifikaciya Razrabotka cherez testirovanie Sistema otslezhivaniya oshibok Autsorsing testirovaniya programmnogo obespecheniya Vnesenie neispravnostejPrimechaniyaISO IEC TR 19759 2005 angl Nadezhnost programmnogo obespecheniya M Mir 1980 angl Software Testing Techniques Second Edition NY van Nostrand Reinhold 1990 ANSI IEEE standart 610 12 1990 Glossary of SE technology NY IEEE 1987 Sommerville I Software Engineering 8th ed Harlow England Pearson Education 2007 Standartnyj glossarij terminov ispolzuemyh v testirovanii programmnogo obespecheniya versiya 2 3 pod red Erik van Veenendaal International Software Testing Qualifications Board ISTQB 2014 GOST R 56920 2016 NACIONALNYE STANDARTY neopr protect gost ru Data obrasheniya 12 marta 2017 12 marta 2017 goda Software and systems engineering Software testing Part 1 Concepts and definitions ISO IEC IEEE 29119 1 2013 E 2013 09 01 S 1 64 doi 10 1109 IEEESTD 2013 6588537 18 dekabrya 2016 goda LiteraturaGlenford Majers Tom Badzhett Kori Sandler Iskusstvo testirovaniya programm 3 e izdanie The Art of Software Testing 3rd Edition M 2012 272 s ISBN 978 5 8459 1796 6 ot 19 iyulya 2012 na Wayback Machine Lajza Krispin Dzhanet Gregori Gibkoe testirovanie prakticheskoe rukovodstvo dlya testirovshikov PO i gibkih komand Agile Testing A Practical Guide for Testers and Agile Teams M Vilyams 2010 464 s Addison Wesley Signature Series 1000 ekz ISBN 978 5 8459 1625 9 Kaner Kem Folk Dzhek Nguen Eng Kek Testirovanie programmnogo obespecheniya Fundamentalnye koncepcii menedzhmenta biznes prilozhenij Kiev DiaSoft 2001 544 s ISBN 9667393879 Kalbertson Robert Braun Kris Kobb Geri Bystroe testirovanie M Vilyams 2002 374 s ISBN 5 8459 0336 X Sinicyn S V Nalyutin N Yu Verifikaciya programmnogo obespecheniya M BINOM 2008 368 s ISBN 978 5 94774 825 3 Bejzer B Testirovanie chyornogo yashika Tehnologii funkcionalnogo testirovaniya programmnogo obespecheniya i sistem SPb Piter 2004 320 s ISBN 5 94723 698 2 SsylkiSem principov testirovaniya programm rus Uluchshaya ne navredi rus
Вершина