There are basically two approaches to software testing - Manual testing and Automation testing. Different software testing approaches need a different skill set of testers. When performing Black box testing, the software tester does not need to have coding knowledge.