7-те основни принципа в софтуерното тестване

7-те основни принципа в софтуерното тестване

avatar Aneliya Terzieva 2 минути
7-те основни принципа в софтуерното тестване

Процесът по осигуряване на качеството се води от 7 фундаментални принципа, които служат като отправна точка за всички специалисти в тази сфера. Ето и кои са те:

1. Тестването може да покаже наличиeто на проблеми, но не и отсъствието им.

Процесът на тестване на една система може единствено да установи наличието на дефекти в системата, свидетелство за които са откритите проблеми в поведението на софтуерния продукт. Обратното, невъзможността да се открият такива, обаче, не означава задължително, че софтуерният продукт няма заложени проблеми. Може да означва, че софтуерния тестер не може да ги открие.

2. Изчерпателното тестване е невъзможно.

Не е възможно да бъдат тествани всички възможни входни данни и тестови ситуации. Опита да се направи, може да струва твърде много или да изисква твърде много време и ресурси, което не винаги е оправдано. Обикновено стратегията на софтуерните тестери е да селектират тестовете, които ще бъдат покрити спрямо оценката на риска им за системата.

3. Ранно тестване

Основно правило в тестването е, че колкото по-рано се хване един проблем, толкова по-лесно и евтино е отстраняването му. Ако даден пропуск се хване още на етап описание на изисквания, коригирането му ще бъде изключително бързо, лесно, а от там и евтно. Ако обаче проблем се хване, на етап разработен продукт пуснат за употреба, то отстраняването му ще бъде значително по-сложно, времеемко, а от там и скъпо.

4. Струпване на дефекти

Според принципа на Парето, при тестване на софтуерен продукт почти 80% от проблемите са породени от 20% от модулите в системата, което води до принципа за така нареченото “струпване на дефекти”.

5. Парадокса на пестицидите

Ако един тестер използва един и същи набор от тестове отново и отново, в един момент, тези тестове ще спрат да намират нови дефекти. За да се избегне това “изхабяване” на тестовете е необходимо софтуерният тестер непрекъснато да разширява и обновява тестовите си сценарии с разширяването и промяната на системата, която се тества.

6. Тестването зависи от контекста

Различните методологии, техники и типове тестване трябва да са съобразени и подбрани в зависимост от приложението, за което ще се използват. Например, при тестването на медицински софтуер е необходимо да има много по-стиктни стандарти и завишени критерии за качеството, отколкото при тестване на игри. Още повече, че при тестването на медицински софтуер ще е необходимо да се приложи метода на тестване спрямо риска и да се следи спазването на всички правила и регулативни стандарти наложени в сферата.

7. Грешката “липса на дефекти”

Само, защото тестването не е открило дефекти, не означава, че няма такива и продукта е готов за предаване и употреба. Необходимо е първо да се установи, дали проверените тестови ситуации са направени така, че да хванат най-важните дефекти? Дали проверяват всички изисквания към функционалността на продукта? Както и други стандарти необходими, за да сме сигурни, че тестването е планирано така, че да покаже качеството на продукта.

Ако искате да стартирате вашата кариера като специалист по осигуряване на качеството, запишете се за курса QA Fundamentals - септември 2017 още сега и сложете началото на вашето развитие в тази процъфтяваща специалност. Побързайте, защото записването е до 11-ти Септември и местата са ограничени.