Robert Sabourin – AmiBug.Com, Inc. and McGill University
Mónica Wodzislawski – Centro de Ensayos de Software (Software Testing Center), Uruguay and Universidad de la República, (University of the Republic), Uruguay
Rob and Monica share over three-quarters of a century of experience teaching programmers about software testing. There is a lot of interest in teaching programming skills to testers, but Rob and Monica suggest that it is even more important to teach testing skills to programmers. Corporate initiatives to “shift left” and agile development “test-driven” approaches are only effective if a skilled programmer is also a skilled tester. Preventative testing is prevalent in many fields of endeavor such as science and medicine. Preventative testing is a natural fit in software engineering.
A lot of agile training emphasizes soft skills to support collaboration between team members with diverse skills. Rob and Monica praise such training but emphasize the need for pragmatic hard skill development. Programming skills, test design skills, troubleshooting, and debugging must be taught. Great testing does not naturally follow from team-building exercises.
As test service professionals, Rob and Monica have observed two phenomenons. First, teams deliver poor quality applications preventing test effort from finding important, critical, and severe bugs. Secondly, teams lack knowledge of a wide range of testing activities and possibilities that could have been accomplished during development.
Programmers are encouraged to have a shared commitment to quality. Training programmers involves building testing technical skills and testing cultural awareness. Programmers must learn to permeate testing into their development insights, process, methods, techniques, and tools.
Different instructional techniques and approaches will be explored. Impactful methods, that stick, will contrast ineffective methods that are quickly discarded. Rob and Monica compare and contrast training approaches used in many different corporate and academic programs. Custom training based on skill assessment and task analysis will be compared with generic courses. The lessons learned may be interesting to organizations and development professionals to help identify methods to apply testing skills very early in development activities.