Oprogramowanie jakie zostanie oddane użytkownikom musi być dokładnie przetestowane. Zapewnianie wysokiej jakości oprogramowania to nie tylko testowanie i poprawianie błędów.
Jest to ogólny proces wprowadzania jakości w rozwoju na różnych jego etapach. Różni się od kontroli jakości, która jest działaniem jednorazowym. Aby pomyślnie dostarczyć projekt, od samego początku należy przeprowadzić kontrolę jakości. Im szybciej rozpocznie się proces, tym lepszy będzie produkt końcowy. Oczywiste jest, że naprawianie błędów, które zostaną wykryte, gdy oprogramowanie jest już w produkcji, będzie kosztować więcej pracy, o wiele więcej niż w przypadku wczesnego wykrycia błędów. Co więcej, aby właściwie przeprowadzić kontrolę jakości, inżynierowie kontroli jakości muszą ściśle współpracować zarówno z programistami, jak i odbiorcą końcowym. Programiści powinni udostępniać specyfikacje techniczne produktu, a firma powinna jasno wyjaśniać, czego oczekują od projektu klienci, a także jakie są jego cele biznesowe. Tylko wtedy, gdy są uzbrojeni w tę wiedzę, inżynierowie kontroli jakości mogą rozpocząć kompleksową opiekę nad procesem kontroli jakości.
Warto oczywiście przeprowadzać różne rodzaje testów, różnych komponentów oddzielnie, oraz oprogramowania jako całości.
Ważne jest aby wszystkie moduły składające się na gotowy program działały poprawnie. Warto przetestować nie tylko oprogramowanie ale także prowadzić testy sprzętowe, przykładowo stopień obciążenia serwerów podczas pracy. Z pewnością testy wydajnościowe pozwalają nam zaprojektować oprogramowanie w taki sposób aby pracowało poprawnie nawet w przypadku zalogowanych wielu użytkowników. Nie można dopuścić do problemów z bazami danych, oraz wieloma innymi obszarami działania. Dzięki temu dedykowane rozwiązania informatyczne, będą bardzo dobrze sprawdzały się podczas pracy u klienta. Użytkownicy końcowi muszą pracować na oprogramowaniu które spełnia ich oczekiwania.