Тестирање на софтвер и различни видови размислување

Кога станува збор за Тестирање на софтвер, човечкиот мозок е најдобрата алатка за тестирање. Кога тестираме софтвер, обработуваме информации, решаваме проблеми, донесуваме одлуки и создаваме нови идеи.

Како тестери, треба да бидеме свесни за различните типови на размислување за да можеме да ги поврземе со различни ситуации. На пример, кога гледаме дијаграм за дизајн, треба да бидеме аналитички. Кога мислиме на сценарија, треба да размислиме на апстрактен начин.

Различни активности за тестирање бараат различни процеси на размислување. Поради оваа причина, важно е да бидете во можност да ги „вклучите“ различните режими на размислување за секоја активност.

Видови на размислување во контекст на тестирање на софтвер

Да ги испитаме различните типови на размислување и како секој може да се примени во контекст на Тестирање на софтвер и разни активности за тестирање.

Креативно или странично размислување

Креативно размислување значи да гледате на нешто на нов начин. Тоа е самата дефиниција за „размислување надвор од рамките“.

Во креативното размислување, ние се отцепуваме од утврдените теории, правила и процедури и ги извршуваме работите на нов и имагинативен начин.



Во контекст на тестирање, на пример, ова може да биде кога применуваме нови техники за тестирање, на пр. техника за тестирање во парови за да се намали бројот на пермутации, но сепак да се зголеми покриеноста.

Аналитичко размислување

Аналитичкото размислување се однесува на можноста да се оддели една целина во нејзините основни делови со цел да се испитаат деловите и нивните односи. Тоа подразбира размислување на логичен, чекор по чекор начин за разградување на поголем систем на информации на неговите делови.

На пример, кога гледаме архитектонски дијаграми и се обидуваме да ја откриеме патеката низ системот и одделните компоненти.

Добар пример е кога анализираме што се случува кога корисникот доставува образец и барањето се испраќа до API кој комуницира со базата на податоци.

Критично размислување

Критичко размислување е можност за расудување со внимателно анализирање на нешто со цел да се утврди нејзината валидност или точност. Станува збор за тоа да се биде активен ученик отколку пасивен примател на информации.

Критичкото размислување е можеби најважниот вид размислување во контекст на тестирање. Како тестери, секогаш треба да ги доведуваме во прашање идеите и претпоставките отколку да ги прифаќаме по номинална вредност.

На пример, кога гледаме приказна за корисник, може да поставуваме прашања во врска со критериуми за прифаќање наместо да ги прифаќаме како што ни се дадени.

Бетонско размислување

Конкретното размислување се однесува на способноста да се сфати и примени фактичко знаење. Тоа е спротивно на апстрактното размислување.

Луѓето кои конкретно размислуваат сакаат да следат упатства и да имаат детални планови. Тие мразат сè што е нејасно или двосмислено. Како такви конкретни мислители претпочитаат да работат со списоци и табеларни пресметки.

Во контекст на тестирање, ова е кога тестерите бараат да постојат сите инструкции пред да започнат со тестирање. На пр. некои тестери нема да започнат со тестирање сè додека не се дефинираат сите критериуми за прифаќање во приказната за корисникот.

Апстрактно размислување

Наспроти конкретното размислување, апстрактното размислување се однесува на можноста да се размислува за работи што всушност не се присутни.

Тестерите за софтвер кои размислуваат на апстрактен начин гледаат на поширокото значење на идеите и информациите, а не на конкретните детали.

На пример, во контекст на сесии за тестирање и уредување на приказни, тестерите со можност да размислуваат на апстрактен начин можат да излезат со интересни сценарија за тестирање. Наместо само да ги читаат критериумите за прифаќање, тестерите ќе погледнат корисничка приказна и ќе се обидат да откријат како тоа би можело да се однесува или да влијае на другите делови на системот.

Дивергентно размислување

Дивергентното размислување се однесува на можноста да се генерираат креативни идеи со истражување на многу можни решенија во обид да се најде едно што работи. Тоа вклучува собирање факти и податоци од различни извори и потоа примена на логика и знаење за донесување одлуки.

Кога правиме истражувачко тестирање, ние аплицираме орали и хеуристика и да донесеме проценки врз основа на нашите претходни искуства.

Конвергентно размислување

Конвергентно размислување е способност да се состави голем број на различни делови или перспективи на една тема на некој организиран, логичен начин да се најде единствен одговор.

На пример, кога се обидуваме да најдеме основна причина за дефект, собираме релевантни информации и извлекуваме потребни податоци.

Секвенцијално размислување

Секвенцијалното (линеарно) размислување се однесува на можноста за обработка на информации на уреден пропишан начин. Тоа вклучува чекор-по-чекор прогресија каде што мора да се добие одговор на чекор пред да се направи друг чекор.

Во контекст на тестирање на софтвер, ова е во корелација кога следиме скрипта со претходно дефинирани чекори и очекувани резултати.

Холистичко размислување

Холистичко (нелинеарно) размислување е способност да се согледа големата слика и да се препознае како компонентите го формираат поголемиот систем. Тоа вклучува проширување на вашиот мисловен процес во повеќе насоки, наместо во само една насока.

Во контекст на тестирање, ова е кога вршиме интеграција или системско тестирање.

Заклучок

Тестирањето на софтвер бара длабоко размислување. Тоа е процес на постојано поставување прашања и анализа на информациите што ги добиваме. Различни активности за тестирање бараат различни процеси на размислување. Разбирањето на различните типови на размислување ќе помогне во поставувањето на вистинските прашања.

Кога интервјуирате тестери, треба да поставуваме прашања базирани на сценарио кои ја вежбаат способноста за размислување на тестерот во однос на горенаведените типови на размислување.