Firmy zajmujące się tworzeniem oprogramowania muszą na każdym etapie sprawdzać jakość i wyłapywać błędy. Z pewnością znalezienie błędów na wczesnym etapie pozwoli uniknąć problemów w przyszłości.
Z pewnością błąd na zaawansowanym etapie może kosztować zarówno dużo czasu jak i pieniędzy. Zasadniczo testowanie można podzielić na dwa rodzaje testowanie ręczne oraz testowanie automatyczne. Aby nauczyć się automatyzować procesy zaangażowane w proces testowania, niezbędna będzie znajomość programowania. Programiści powinni już wiedzieć, jak zautomatyzować te procesy, biorąc pod uwagę, że pracują z kodowaniem każdego dnia. Programiści powinni współpracować z działem kontroli jakości, dzięki temu prace będą posuwały się sprawnie. Ważne jest szczegółowe rejestrowanie wyników testów, dzięki temu można będzie analizować wszystkie etapy testów. Oczywiście po wprowadzeniu poprawek trzeba będzie powtórzyć testy aby sprawdzić czy nowy kod nie będzie powodował nieprzewidzianych problemów w innym miejscu. W przypadku aplikacji mobilnych testowane jest prawidłowe wyświetlania na różnych urządzeniach, z pewnością aplikacja musi prawidłowo wyglądać na każdym urządzeniu.
Obecnie na rynku dostępnych mamy wiele różnych modeli telefonów czy też tabletów.
Dlatego też testy mogą sprawdzać prawidłowość wyświetlania na różnych urządzeniach ze względu na rozdzielczość ekranu. Oczywiście należy brać pod uwagę różne systemy operacyjne które posiadają urządzenia. Aplikacja powinna być czytelna dla użytkownika, przyciski powinny być odpowiedniej wielkości aby łatwo można było nawigować. Także całe menu musi być czytelne i intuicyjne. W przypadku kiedy oprogramowanie ma współgrać z innymi programami należy wykonać testy integracyjne. Mogą one wykazać czy nasz program będzie dobrze współpracował z innymi programami czy też dobrze będzie działała w środowisku danego systemu operacyjnego. Dzięki testom będziemy w stanie wykryć wszystkie nieprawidłowości przed drożeniem go u klienta.