Программистом быть точно не нужно. Хороший программист редко бывает хорошим тестировщиком.:) Нужно знать теорию тестирования, иметь хоть какое-то образование. Знать системы, в которые заносятся ошибки - Redmine, Jira, другая, которая используется в компании. Главное, это заинтересованность и внимательность.