Teaching novice programmers using ProgTest

Programming foundations is not an easy subject to be taught, mainly because of the abstract concepts that need to be mastered. On the other hand, experiences have suggested that the early mastering of testing concepts can contribute to enhance the students' skills of comprehension and analysis of programs. Aiming at addressing the integrated teaching of programming and testing practices, automatic test-based assessment systems have been developed and adopted in programming courses. In this paper we discuss the use of ProgTest - a test-based assessment tool which provides an immediate feedback to students regarding the quality of the programs developed and the test cases designed. ProgTest was applied to a group of undergraduate students of an introductory programming course. In short, the outcomes suggest that the constant and concrete feedback provided by the tool was useful for helping students to improve their assignments, both in terms of programming and testing.