Ръчното тестване е процес на проверка, дали софтуерът работи според изискванията, чрез физическо използване на функциите и характеристиките на приложението, така както би направил краен потребител. Включва разбира се, и техните потенциални грешки, с цел да се гарантира, че софтуерът няма дефекти.
В този ред на мисли, съществуват два начина за тестване на софтуер: ръчно от реален човек и автоматизирано, така че компютърът да може да го направи като човек. Всеки метод си има своите предимства и недостатъци, но и двата споделят една и съща основна цел – стремеж да осигурят качество на тествания софтуер.
За да бъде успешно ръчното тестване, тестерът първо трябва да анализира изискванията, което означава да разбере как трябва да работи софтуера. Документите, съдържащи цялата подходяща информация за тестваното приложение, са известни като изисквания или потребителски истории, ако са написани в този формат. Те помагат на тестерите да разберат целта на софтуера, всички раздели за тестване, какво трябва да направи тестерът и какво се класифицира като дефект. Познаването на тази информация, преди да се подготвите за тестване, е много полезно, тъй като, както при всички тестове на софтуер, основната цел е на финала софтуерът да се доближи възможно най-близо до липса на грешки.
Когато изискванията или потребителските истории не са налични, тестерът ще трябва да бъде малко по-креативен, да разгледа различни източници, за да си помогне и да разбере как трябва да работи системата.
След като изискванията са проучени и разбрани, е време да напишете тестови случаи. Тестовите случаи работят като справочни ръководства за тестерите, като излагат стъпките и инструкциите за тестване на различните функции, и сценарии в рамките на софтуерното приложение. Писането на подробни тестови случаи е от съществено значение, защото те помагат за гладкото изпълнение на теста и осигуряват възможно най-широкото покритие на теста. Тестовите случаи също трябва да съдържат достатъчно подробности, така че тестовете да могат да се повтарят, ако е необходимо. Това позволява бъдещи изпитвания и повторно провеждане на тестове, без да е необходимо да се задават допълнителни въпроси.
След като напишете тестовите случаи и подготвите средата за тестване, е време да започнете и самото тестване. След като всеки тест бъде завършен, той трябва да бъде маркиран като преминал, неуспешен или пропуснат. Когато правите ръчно тестване, водете си бележки какво се е случило, за да доведе до неуспех теста, защото е полезно да имате достъп до тези показатели за бъдещо планиране.
Освен тестването, тестерът е отговорен и за регистрирането на подробности за всички открити по време на тестването или по-късно, грешки. Докладът за грешка, който създавате, трябва да има уникално разпознаваемо заглавие, за да ви помогне да го намерите и по-късно. Включете стъпки за възпроизвеждане на грешката (често стъпките на тестовия случай), очаквани и действителни резултати, плюс всички подходящи прикачени файлове, за да помогнете на екипа за разработка да разбере проблема, като екранни снимки, екранни записи или експортирани файлове.
След провеждане на тестове, възможността бързо да видите как вървят нещата може да бъде доста полезна. Колко теста са били проведени? Колко теста са били неуспешни? Колко теста са били пропуснати? Познаването на тези показатели улеснява планирането на следващите стъпки.
Ръчното тестване може да бъде трудоемко. Въпреки че е лесно да се каже „нека го пропуснем“ или „нека просто го автоматизираме“, ръчното тестване е жизненоважен елемент в изграждането на софтуер, тъй като автоматизираното тестване не може да покрие всичко. В края на краищата, хората са тези, които ще използват вашия софтуер, така че има смисъл хората да участват в тестването на вашия софтуер. Ръчното тестване намира и решава повече проблеми с използваемостта, отколкото автоматизираното, защото позволява на тестера да бъде гъвкав по време на теста, и да може да изпробва различни опции в движение.
Това не означава, че автоматизираното тестване няма стойност. Основната полза от използването на автоматизирано тестване е да се облекчи досадата от повтарящи се задачи. Той също така осигурява стойност в някои области, където ръчното тестване не го прави.
Въпреки, че ръчното тестване включва много работа, то е жизненоважно за осигуряване на задоволително потребителско изживяване и високо ниво на качество. Човешкият тестер винаги ще открие неща, които автоматизираният тест не може.