;
Виктория Слинявчук

7 принципов тестирования. Часть 1

03.05.2021 19400
IBS Training Center Telegram
Подписывайтесь на наш канал в Telegram:
больше материалов экспертов, анонсы бесплатных вебинаров и задачки для IT-специалистов
Подписаться
В статье использованы материалы книги «Foundations of Software Testing: ISTQB Certification» by Dorothy Graham, Erik van Veenendaal, Isabel Evans & Rex Black.

О 7 принципах тестирования пишут часто, но обычно довольно сжато. Дороти Грэхем и соавторы в своей замечательной книге объясняют эти основополагающие принципы весьма детально.

Принцип 1. Тестирование показывает наличие дефектов
Тестирование может показать, что дефекты присутствуют, но не может доказать, что дефектов нет.


Доказать, что чего-то нет, в принципе затруднительно. Сколько бы белых лебедей мы ни видели, это еще не служит основанием утверждать, что «все лебеди белые». Но если мы увидим хотя бы одного черного лебедя, мы может сказать, что «не все лебеди белые».

Сколько бы успешных тестов вы не провели, вы не можете утверждать, что нет таких тестов, которые не нашли бы ошибку. Но если мы нашли хотя бы один дефект, мы уже можем утверждать, что в данном ПО присутствуют дефекты.

Впрочем, это отнюдь не означает, что тестирование бесполезно и не может повысить наш уровень уверенности в качестве ПО. Тестирование уменьшает вероятность необнаруженных дефектов, которые остаются в ПО, но всегда нужно помнить, что даже если дефекты не найдены, это еще не доказательство того, что их нет.



Принцип 2. Исчерпывающее тестирование невозможно

Этот принцип связан с вопросом: «сколько нужно тестировать?».

Какие вообще могут быть ответы на этот вопрос? Мы можем протестировать всё, ничего не тестировать или протестировать какую-то часть. Идеальным вариантом выглядит «протестировать всё», но стоит разобраться, должны ли мы и можем ли вообще это сделать.

Сколько тестов нужно выполнить, чтобы полностью протестировать поле ввода, принимающее одну цифру? Зависит от того, что мы понимаем под словом «полностью». Есть 10 возможных валидных значений, но, кроме того, надо еще убедиться, что невалидные значения правильно обрабатываются. 26 заглавных латинских букв, 26 строчных букв, не менее 6 знаков пунктуации и пробел… Уже 68, а это мы еще не вспомнили о кириллице, спецсимволах и тому подобном.

Если мы посмотрим на более реалистичный пример, то всё ещё хуже. На практике, системы обычно имеют более одного поля ввода и поля эти имеют разный размер. А еще есть различные окружения, на которых нужно выполнить тесты… Если мы возьмем для примера один скрин, на котором 15 полей ввода, каждое из которых принимает 5 значений, то чтобы протестировать все валидные комбинации ввода, нам понадобится 30 517 578 125 (5 в 15-й степени) тестов. Очень маловероятно, что это уложится во временные рамки вашего проекта.

Помните сказку о волшебном горшочке с кашей, который наварил ее столько, что залил целый город? Так вот, наш «горшочек» может варить очень-очень долго, почти бесконечно, и когда-то нам надо сказать: «Стоп! Горшочек, не вари!».



Используя технику классов эквивалентности, мы можем сократить число наших тестов, ведь тестирование нашего поля ввода, принимающего одну цифру, при помощи значений 2, 3, 4 не дает нам больше информации, чем если бы мы протестировали только со значением 3.

Объем тестирования в реальной жизни ограничен временными рамками и бюджетом, в то же время существует необходимость поставить техническое решение, которое отвечает требованиям заказчика. Заказчики и руководители проекта хотят возврата инвестиций (ROI) от времени, потраченного на тестирование (время – деньги). Например, предотвратить появление ошибок после релиза – исправлять их всегда дорого. Но полное тестирование они просто не могут себе позволить – даже если очень хочется…

Вместо попыток «протестировать всё» нам нужен некий подход к тестированию (стратегия), который обеспечит правильный объем тестирования для данного проекта, данных заказчиков (и других заинтересованных лиц) и данного продукта. При определении, какой объем тестирования достаточен, необходимо учитывать уровень риска, включая технические риски и риски, связанные с бизнесом, и такие ограничения проекта как время и бюджет. Оценка и управление рисками – одна из наиболее важных активностей в любом проекте. Это позволяет варьировать трудозатраты на тестирование, основываясь на уровне риска в различных областях.

Кроме того, тестирование должно обеспечивать необходимую информацию, чтобы заинтересованные лица могли принимать информированные решения о релизе продукта или передаче заказчикам. 

Продолжение статьи.

Курсы по тестированию ПО.

Расскажи друзьям:

Parker
Pandora Outlet
Pandora Jewelry
Nike Outlet
Ferragamo Belt
Pandora
Pandora Charms
Nike Air Max
Pandora
Wholesale Jordan
Adidas Outlet
Pandora
Jordan Shoes
Asics Shoes Men
Jordans 1
Moncler Official Site
Nike Outlet Online
Pandora
Moncler Outlet
Pandora Jewelry
Pandora Jewelry
Pandora Jewelry
Women Nike Shoes
Pandora Bracelets
Pandora Charms
Cheap Moncler Coats
Pandora Charms Outlet
Nike Mens Shoes
Air Jordan 1
Pandora Jewellery
Pandora Jewelry
Pandora
Nike Snkrs Canada
Pandora Jewelry Official Site
Pandora Jewelry Black Friday
Pandora
Adidas Canada
Men Nike Sneakers
Pandora Jewelry
Jordan Retro 1
Jordan 1 Lows
Nike Sneakers Women
Pandora
Pandora Website
Air Jordan 1 Mid
Best Nike Running Shoes
Yeezy
Adidas Shoes Women
Adidas Shoes
Pandora Jewelry 70% Off Clearance
Moncler Jackets
Cheap Nike Shoes
Jordan 1 Mid
Nike Women Shoes
Pandora Charms Outlet
Balenciaga Triple S Sneakers
Moncler Coats For Men
Ferragamo
Goyard Handbag
Nike Shoes
Nike Canada
Pandora Bracelet
Pandora Charms Sale Clearance
Pandora Jewelry
Pandora Bracelets
Adidas Running Shoes For Men
Pandora Charms Sale Clearance
Air Jordans 1
Nike Air Jordan 1
Pandora Official Site
Pandora Jewelry
Pandora Jewelry
Air Jordan 1 Retro
Nike Shoes For Men
Asics Shoes
Pandora Outlet
Air Jordan 1s
Balenciaga Shoes
Wholesale Jordan Shoes From China
Air Jordan 5
Pandora Store
Moncler Outlet
Pandora Charms
Nike Shoes
Pandora Charms
Basketball Shoes
Moncler Sale
Pandora Official Site
Salvatore Ferragamo
Jordans Sneakers
Air Jordan 1
Shoes Nike
Pandora Charms
Pandora Outlet
Moncler Coat Men
Balenciaga
Pandora Rings
Pandora
Yeezy Shoes
Mens Adidas Shoes
Pandora Jewelry
Sneakers Adidas
Cheap Adidas Shoes
Nike Canada Online
Puma Shoes
Nike Store UK
Asics Kayano
Jordan 1 High
Pandora Outlet
Pandora
Asics Sneakers For Men
Goyard Bag
Jordans Wholesale Suppliers
Pandora Charms
Nike Factory
Pandora Outlet
Balenciaga
Air Max 720
Air Jordan Sneakers
Nike Air Jordans
Pandora Outlet Online
Ferragamo Shoes
Cheap Moncler Jackets
NMD
Asics Outlet Store Online
Balenciaga
Balenciaga
Air Jordan 1 Low
Jordan 1 Retro
Asics
Wholesale Jordan
Pandora Charms
Pandora Charms Bracelets
Adidas Shoes
Pandora Jewelry
Pandora
Moncler Outlet Store
Nike Shoes
Jordan One
Adidas Website
Balenciaga Outlet
Pandora Charms
Asics Running Shoes Women
Nike
Nike Outlet Store
Pandora Bracelets
Moncler Jacket
Pandora Charms Outlet
Moncler Jacket
Pandora Ring
Pandora Jewelry 70% Off Clearance
Ferragamo
Nike Outlet Online
Adidas Clearance Sale
Air Jordan 1 Dior
Air Max 270
Pandora Outlet
Air Max 97
ИмяЦитировать 0
Guest
https://mymoleskine.moleskine.com/community/members/davit_putra/
https://support.advancedcustomfields.com/forums/users/aqurprinting/
https://buddypress.org/members/aqurprinting/profile/
https://slides.com/nadawebsite
https://community.windy.com/user/nada-website
https://seedandspark.com/user/aqur-printing
https://www.qureta.com/next/profile/aqurprinting
https://experiment.com/users/aprinting
https://www.divephotoguide.com/user/aqurprinting
https://forum.prusa3d.com/forum/profile/514214/
https://reactos.org/forum/memberlist.php?mode=viewprofile&u=84131
https://www.zintro.com/profile/zidbe7ed5b?ref
https://artmight.com/user/profile/881908
https://bikeindex.org/users/af9wun__8fnyvatpkezbma
http://gendou.com/user/aqurprinting
https://uebermaps.com/profile/98741
https://www.intensedebate.com/people/papaleloe
https://webhitlist.com/profiles/blog/list?user=d0151adf2ece47e0ad9fec0984381b78
https://sites.google.com/view/cetak-spanduk-promosi/?pli=1
https://fulmaputri.contently.com/
https://speakerdeck.com/putrijenita
https://peatix.com/user/15152585/
https://www.clearos.com/community/my-profile
https://everydayhero.ideas.aha.io/ideas/EDH-I-8095
https://omastadi.hel.fi/profiles/aqurprinting/activity?locale=en
https://sanjose.granicusideas.com/
https://coub.com/yumaidar-sutra
https://myspace.com/percetakanrawamangun
https://www.behance.net/yumaidarsutra
https://www.flickr.com/people/percetakanrawamangun/
https://justpaste.it/u/Aqur_Printing
https://linktr.ee/aqurprinting
https://qiita.com/yumaidarsutra
https://godotengine.org/qa/user/aqurprinting
https://dzone.com/users/4851657/aqurprinting.html
https://500px.com/p/yumaidarsutraid?view=photos
https://cycling74.com/author/63a5efda2b3aa4087ea961df
https://www.mindmeister.com/users/channel/93503845
https://id.radiocut.fm/user/aldiputra/
https://www.awwwards.com/yumaidar-sutra/
https://data.world/tututkhalet
https://www.kiva.org/lender/yumaidar3938
https://www.hackster.io/yumaidarsutraid
https://www.producthunt.com/@aldiarsela
https://www.wishlistr.com/jekiputra
https://www.indiegogo.com/individuals/31320704
https://ciscocollabcustomer.ideas.aha.io/ideas/WXCUST-I-11650
https://graceful.dev/members/renggaputra/
http://sova.pitt.edu/members/aqurprinting/
https://www.wantedly.com/id/yumaidar_sutra
https://www.walkscore.com/people/482444639306/aqur-printing-jakarta
https://decidim.sabadell.cat/profiles/aqurprinting/activity
https://www.wishlistr.com/profile/aqurprinting
https://participer.ge.ch/profiles/aqurprinting/
https://git.logipro.com/aqurprinting
https://gamebuino.com/@129921
https://consultation.quebec.ca/profiles/aqurprinting/
https://participa.vilanova.cat/profiles/aqurprinting/
https://decidim.calafell.cat/profiles/aqurprinting/
https://osallistu.tuusula.fi/profiles/yumaidar_sutra/
https://www.ottawaks.gov/profile/yumaidarsutra-id/profile
https://www.leetchi.com/en/c/rkBx90Ln
https://www.provenexpert.com/rengga-eranggi/
https://www.metal-archives.com/users/aqurprinting
https://www.pubpub.org/user/aqur-printing
https://disqus.com/by/disqus_9r4eUxys9U/about/
https://aqur-printing.webflow.io/
https://folkd.com/user/aqurprinting
https://www.openstreetmap.org/user/Aqur%20Printing
https://www.twitch.tv/aqurprinting/about
https://padlet.com/yumaidarsutraid/86wc9by0ac2thym5
https://myanimelist.net/profile/aqurprinting
https://www.cheaperseeker.com/u/aqurprinting
https://www.nulled.to/user/5518833-aqurprinting
https://anchor.fm/percetakan-rawamang
http://www.video-bookmark.com/user/aqurprinting/
https://worldcosplay.net/member/1118365
https://www.startus.cc/people/aqur_printing
https://www.ulule.com/yumaidarsutra-id/#/
https://www.zippyshare.com/aqurprinting
https://codesandbox.io/u/udayuma
https://591283.8b.io/
https://sketchfab.com/aqurprinting
https://www.mixcloud.com/aqurprinting/
https://moz.com/community/q/user/aqurprinting
https://doodleordie.com/profile/aqurprinting
https://mootools.net/forge/profile/AqurJakarta
https://www.microsoftpartnercommunity.com/t5/user/viewprofilepage/user-id/145782
https://www.dermandar.com/user/aqurprinting/
https://os.mbed.com/users/aqurprinting/
https://knowyourmeme.com/users/aqurprinting
https://ello.co/aqurprinting
https://www.ted.com/profiles/40642584
https://play.eslgaming.com/player/18876061/
https://leetcode.com/aqurprinting/
https://www.scoop.it/u/yumaidarsutra-id-gmail-com
https://xoops.ec-cube.net/userinfo.php?uid=285494
https://my.desktopnexus.com/aqurprinting/
http://www.virtualdj.com/user/id_yuma/index.html
http://uid.me/aqur_printing
https://seedandspark.com/user/aqur-printing-1
https://www.toontrack.com/forums/users/aqurprinting/
https://trabajo.merca20.com/author/aqurprinting/
https://www.magcloud.com/user/aqurprinting
https://www.wattpad.com/user/aqurprinting
https://nowewyrazy.uw.edu.pl/profil/aqurprinting
https://www.linux.org/members/aqurprinting.151213/
https://buddypress.org/members/udayuma/profile/
http://www.lawrence.com/users/aqurprinting/
https://aqur-printing.webnode.page/
https://www.turnkeylinux.org/user/1896993
https://cults3d.com/en/users/aqurprinting
http://snstheme.com/forums/users/aqurprinting/
https://studiopress.community/users/aqurprinting/
https://440hz.my/forums/users/aqurprinting/
http://forums.brainsuite.org/forums/users/aqurprinting/
https://www.spheretester.com/support/users/aqurprinting/
https://community.allen-heath.com/forums/users/aqurprinting/
https://www.canadavideocompanies.ca/forums/users/aqurprinting/
http://artplaces.nl/forums/users/aqurprinting/
http://www.heromachine.com/forums/users/aqurprinting/
https://blog.clickteam.jp/forums/users/aqurprinting/
https://juicebox.net/forum/profile.php?id=60585
https://catchplugins.com/support-forum/users/aqurprinting
https://bunkersnack.se/forums/users/aqurprinting/
https://blender3d.com.ua/forums/users/aqurprinting/
http://alwayssmiling.co.uk/forums/users/aqurprinting
https://mad-in-italy.com/forums/users/aqurprinting/
https://astom.kiev.ua/forums/users/aqur-printing/
https://ah2.justflight.com/user/aqur-printing
https://www.edacafe.com/wwwthreads-5.3/showprofile.php?Cat=2&User=aqurprinting
https://www.codechef.com/users/aqurprinting
https://www.linkcentre.com/profile/aqurprinting/
https://8tracks.com/yumaidar-s
https://wacowla.com/chineseclassifieds/author/aqurprinting/
https://rainplatform.wtelecom.es/user/63983/
https://letempledelaforme.fr/user/profil/43460
https://guildwork.com/users/aqurprinting
https://community.sw.siemens.com/s/profile/0054O00000A9VrR
https://telegra.ph/Redirect-Aqur-Printing-01-04
https://sway.office.com/27accWkjTvyZYeqS
https://bit.ly/3FYMVko
https://telegra.ph/Solusi-Cetak-Produk-Promosi-dengan-Kualitas-Terbaik-12-31
https://at.tumblr.com/blogremaja-blog/faktor-faktor-yang-perlu-dipertimbangkan-dalam/7ev65owg013b
https://bit.ly/3jIu9X2
https://telegra.ph/Faktor-faktor-yang-Perlu-Dipertimbangkan-dalam-Memilih-Jasa-Percetakan-12-31
https://tabelog.com/rvwr/020696576/prof/
https://udayumaofficial.amebaownd.com/posts/32585234
https://bit.ly/3Vy0UDy
https://percetakanjakarta.nethouse.ru/
https://bit.ly/3WWqDqF
https://managementmania.com/en/blog/yumaidar-sutra/hal-yang-harus-kamu-tahu-tentang-buku-umroh
https://bit.ly/3jCyICp
https://percetakankeren.bloggersdelight.dk/
https://bit.ly/3GBp3Fn
https://telegra.ph/Kenali-Lebih-Lanjut-Tentang-Buku-Umorh-12-30
https://bit.ly/3I9TLpY
ИмяЦитировать 0
Комментировать
Как не пропустить самое интересное?
Подписывайтесь на наш ежемесячный дайджест!
Спасибо.
Вы подписаны на ежемесячный дайджест.
Пользователь только что записался на курс ""
Спасибо!
Форма отправлена успешно.