black box testing an depth tutorial with examples
У овом упутству, користећи своје индустријско искуство у тестирању софтвера, упознајмо се са врстама и техникама тестирања црне кутије, заједно са његовим процесом, предностима, недостацима и неким алатима за аутоматизацију за његово тестирање, осим ручног тестирања.
Такође ћемо научити о разликама између тестирања беле кутије и тестирања црне кутије.
Списак лекција за „Технике тестирања црне кутије“:
Туториал # 1: Шта је тестирање црне кутије
Туториал # 2: Шта је тестирање беле кутије
Туториал # 3: Поједностављено функционално тестирање
Туториал # 4: Шта је испитивање корисних случајева
Водич бр. 5 : Техника испитивања ортогоналних низова
Технике
Лекција # 6: Анализа граничне вредности и подела еквиваленције
Туториал # 7: Тестирање табеле одлучивања
Туториал # 8: Испитивање транзиције државе
Туториал # 9 : Нагађање грешке
Водич бр. 10: Методе испитивања засноване на графу
Готово сви свакодневно тестирамо Блацк Бок!
Без обзира да ли смо научили или не, сви смо много пута у свакодневном животу тестирали црне кутије !!
Из самог имена вероватно можете да схватите да оно подразумева интеракцију са системом, које тестирате као мистериозну кутију. То значи да нисте довољно упућени у унутрашњи рад система, али знате како треба да се понаша.
Ако узмемо пример да бисмо тестирали свој аутомобил или бицикл, увек га возимо како бисмо били сигурни да се не понаша необично. Видиш? Већ смо извршили тестирање црне кутије.
Шта ћете научити:
- Шта је тестирање црне кутије?
- Врсте испитивања црних кутија
- Алати за тестирање црне кутије
- Технике испитивања црне кутије
- Како поступити корак по корак?
- Предности и мане
- Разлика између тестирања беле кутије и црне кутије
- Закључак
- Препоручено читање
Шта је тестирање црне кутије?
Тестирање црне кутије познато је и као бихејвиорално, непрозирно, затворено, специфицирано или тестирање очи у очи.
То је метода софтверског тестирања која анализира функционалност софтвера / апликације не знајући много о унутрашњој структури / дизајну предмета који се тестира и упоређује улазну вредност са излазном вредношћу.
бруте форце пассворд црацкер за андроид
Главни фокус при тестирању црне кутије је на функционалности система у целини. Термин „Бихевиорално тестирање“ користи се и за тестирање црне кутије. Дизајн бихевиоралног теста се мало разликује од теста црне кутије, јер употреба интерног знања није строго забрањена, али је ипак обесхрабрена.
Свака метода испитивања има своје предности и недостатке. Постоје неке грешке које се не могу пронаћи коришћењем једине црне кутије или само беле кутије.
Већина апликација је тестирана методом Блацк Бок. Морамо да покријемо већину тест случајева како би већину грешака открио а Црна кутија метода.
Ово тестирање се одвија током развоја софтвера и животног циклуса тестирања, тј. У фазама тестирања јединице, интеграције, система, прихватања и регресије.
Ово може бити и функционално и нефункционално.
Врсте испитивања црних кутија
Практично, постоји неколико врста тестирања црних кутија које су могуће, али ако узмемо у обзир његову главну варијанту, онда су наведена два основна.
# 1) Функционално тестирање
Овај тип се бави функционалним захтевима или спецификацијама апликације. Овде се тестирају различите радње или функције система пружањем улаза и упоређивањем стварног излаза са очекиваним учинком.
На пример ,када тестирамо падајућу листу, кликнемо је и потврдимо да се проширује и да се на листи приказују све очекиване вредности.
Неколико главних врста функционалног тестирања су:
- Испитивање дима
- Испитивање разумности
- Испитивање интеграције
- Тестирање система
- Регресија тестирање
- Тестирање прихватљивости корисника
=> Прочитајте више о томе Функционално тестирање .
# 2) Нефункционално тестирање
Поред функционалности захтева, постоји и неколико нефункционалних аспеката који се морају тестирати како би се побољшао квалитет и перформансе апликације.
Неколико главних врста нефункционалног тестирања укључују:
- Испитивање употребљивости
- Испитивање оптерећења
- Тестирање перформанси
- Испитивање компатибилности
- Тестирање напрезања
- Испитивање скалабилности
=> Прочитајте више о томе Нефункционално тестирање .
Алати за тестирање црне кутије
Алати за тестирање црне кутије су углавном алати за снимање и репродукцију. Ови алати се користе за тестирање регресије да би се проверило да ли је нова изградња створила било какву грешку у претходној функционалности функционалне апликације.
Ови алати за снимање и репродукцију бележе тест случајеве у облику неких скрипти као што су ТСЛ, ВБ скрипта, Јавасцрипт, Перл итд.
Технике испитивања црне кутије
Да би се системски тестирао скуп функција, потребно је дизајнирати тест случајеве. Испитивачи могу створити случајеве испитивања из документа са спецификацијама захтева користећи следеће технике тестирања црне кутије.
- Еквиваленција партиционирања
- Анализа граничне вредности
- Тестирање табеле одлучивања
- Испитивање транзиције државе
- Нагађање грешке
- Методе испитивања засноване на графу
- Испитивање упоређивањем
Хајде да детаљно разумемо сваку технику.
# 1) Еквивалентна партиција
Ова техника је позната и као партиционирање класе еквиваленције (ЕЦП). У овој техници, улазне вредности система или апликације подељене су у различите класе или групе на основу његове сличности у исходу.
Стога, уместо да користимо сваку улазну вредност, сада можемо да користимо било коју вредност из групе / класе да бисмо тестирали исход. На тај начин можемо одржати покривеност тестом, док можемо смањити пуно прераде и најважније утрошеног времена.
На пример:
Као што је присутно на горњој слици, текстуално поље „АГЕ“ прихвата само бројеве од 18 до 60. Биће три скупа класа или група.
Две неважеће класе биће:
најбољи бесплатни ДВД риппинг софтвер Виндовс
а) Мање од или једнако 17.
б) веће или једнако 61.
Једна валидна класа биће било шта између 18 и 60.
Стога смо тест случајеве свели на само 3 тест случаја на основу формираних класа, покривајући тако све могућности. Дакле, тестирање са било чијом вредношћу из сваког скупа класе је довољно за тестирање горњег сценарија.
=> Препоручено читање - Шта је еквивалентна партиција?
# 2) Анализа граничне вредности
Из самог имена можемо схватити да се у овој техници фокусирамо на вредности на границама, јер се утврђује да многе апликације имају велику количину проблема на границама.
Граница означава вредности близу границе где се понашање система мења. У анализи граничне вредности тестирају се и ваљани и неваљани улази како би се верификовали проблеми.
На пример:
Ако желимо да тестирамо поље где треба да се прихвате вредности од 1 до 100, тада бирамо граничне вредности: 1-1, 1, 1 + 1, 100-1, 100 и 100 + 1. Уместо да користимо све вредности од 1 до 100, ми само користимо 0, 1, 2, 99, 100 и 101.
# 3) Тестирање табеле одлучивања
Као што и само име сугерише да, где год постоје логични односи попут:
Ако
{
(Услов = Тачно)
затим акција1;
}
елсе ацтион2; / * (стање = Нетачно) * /
Тада ће тестер идентификовати два излаза (ацтион1 и ацтион2) за два услова (Труе и Фалсе). Дакле, на основу вероватних сценарија обликована је табела Одлука за припрему скупа тест случајева.
На пример:
Узмимо пример КСИЗ банке која обезбеђује каматну стопу за старије мушкарце од 10%, а за остале 9%.
У овом примеру услова, Ц1 има две вредности као труе и фалсе, услов Ц2 такође има две вредности као труе и фалсе. Број укупних могућих комбинација тада би био четири. На овај начин можемо извести тест случајеве помоћу табеле одлука.
како позвати методу користећи низ објеката у јави
# 4) Испитивање транзиције државе
Испитивање транзиције стања је техника која се користи за тестирање различитих стања система који се испитује. Стање система се мења у зависности од услова или догађаја. Догађаји покрећу стања која постају сценарији и тестер их мора тестирати.
Дијаграм систематског преласка стања даје јасан приказ промена стања, али је ефикасан за једноставније примене. Сложенији пројекти могу довести до сложенијих дијаграма транзиције, што га чини мање ефикасним.
На пример:
# 5) Нагађање грешке
Ово је класичан пример тестирања заснованог на искуству.
У овој техници испитивач може да користи своје искуство о понашању и функционалностима апликације да би погодио подручја која су склона грешкама. Много грешака може се наћи помоћу погађања грешака где већина програмера обично прави грешке.
Неколико уобичајених грешака које програмери обично забораве да реше:
- Поделите са нулом.
- Руковање нулл вредностима у текстуалним пољима.
- Прихватање дугмета „Пошаљи“ без икакве вредности.
- Отпремање датотеке без прилога.
- Отпремање датотека чија је величина мања или већа од ограничене.
# 6) Методе испитивања засноване на графу
Свака апликација је накупина неких објеката. Сви такви објекти су идентификовани и графикон је припремљен. Из овог графа објекта идентификује се сваки однос објекта и у складу с тим записују се тест случајеви како би се откриле грешке.
# 7) Тестирање упоређивања
Различите независне верзије истог софтвера користе се за међусобно упоређивање за тестирање овом методом.
Како поступити корак по корак?
Генерално, када се следи систематски поступак за тестирање пројекта / апликације, тада се одржава квалитет и дугорочно је користан за даље рунде тестирања.
- Најважнији корак је разумевање спецификације захтева апликације. Треба да постоји одговарајући документовани СРС (спецификација захтева за софтвер).
- Коришћењем горе поменутих техника испитивања црних кутија, попут анализе граничне вредности, еквивалентне партиције итд. Скупови важећих и неваљаних улаза идентификују се са жељеним резултатима и на основу тога се дизајнирају примери испитивања.
- Дизајнирани тест случајеви извршавају се да би се проверило да ли пролазе или не успевају провером стварних резултата са очекиваним резултатима.
- Случајеви неуспелих тестова подижу се као Дефекти / Грешке и обраћају се развојном тиму да их поправи.
- Даље, на основу отклоњених недостатака, испитивач поново тестира недостатке да би потврдио да ли се понављају или не.
Предности и мане
Предности
- Испитивач не мора имати техничку подлогу. Важно је тестирати на месту корисника и размишљати са његове тачке гледишта.
- Тестирање се може започети након завршетка израде пројекта / апликације. И тестери и програмери раде независно без мешања у простор других.
- Ефикаснији је за велике и сложене примене.
- Дефекти и недоследности могу се идентификовати у раној фази испитивања.
Мане
- Без икаквог техничког или програмског знања, постоји шанса да се игноришу могући услови сценарија који ће се тестирати.
- У предвиђеном времену постоје могућности мањег тестирања и прескакање свих могућих улаза и њихово излазно тестирање.
- Комплетна покривеност тестом није могућа за велике и сложене пројекте.
Разлика између тестирања беле кутије и црне кутије
Следи неколико разлика између њих обе:
Тестирање црне кутије | Испитивање беле кутије |
---|---|
То је метода испитивања без знања о стварном коду или унутрашњој структури апликације | То је метода испитивања која има знање о стварном коду и унутрашњој структури апликације |
Ово је испитивање вишег нивоа, попут функционалног испитивања. | Ова врста испитивања се изводи на нижем нивоу испитивања као што су јединствено тестирање, интеграционо тестирање |
Концентрише се на функционалност тестираног система | Концентрише се на стварни кодни програм и његову синтаксу |
Тестирање црне кутије захтева спецификацију захтева за тестирање | За тестирање Вхите Бок-а потребни су пројектни документи са дијаграмима протока података, дијаграмима итд. |
Тестирање црне кутије обављају тестери | Тестирање беле кутије раде програмери или тестери са знањем програмирања. |
Закључак
Ово су неке од основних тачака у вези са тестирањем црне кутије и прегледом њихових техника и метода.
Како није могуће све тестирати уз људско учешће са 100-постотном тачношћу, ако се горе поменуте технике и методе ефикасно користе, то ће сигурно побољшати квалитет система.
Да закључимо, ово је врло корисна метода за верификацију функционалности система и идентификовање већине недостатака.
Надам се да бисте стекли детаљно знање о техници тестирања црне кутије.
Препоручено читање
- Кључне разлике између тестирања црне кутије и тестирања беле кутије
- Најбољи алати за тестирање софтвера 2021. године (КА Тест Аутоматион Тоолс)
- Функционално тестирање вс нефункционално тестирање
- Водич за тестирање у паровима или за све парове са алатима и примерима
- Тестирање беле кутије: Комплетан водич са техникама, примерима и алатима
- Водич за испитивање запремине: примери и алати за испитивање запремине
- Водич за испитивање конфигурације са примерима
- Преузимање е-књиге за тестирање буквара