Manual software testing has been the cornerstone of software testing ever since software testing was set up. All test engineers and software QA staff, developers and programmers test their code manually, at least to some degree. Though it is a critical element of software testing, it is certainly not the be-all and end-all.