3E. Troubleshoot basic software, hardware, and connectivity issues

Troubleshoot basic software, hardware, and connectivity problems common in digital learning environments. (ISTE, 2011)

One of the biggest challenge in computer science education is getting students to test their code.  This challenge became particularly difficult for me because of some hardware and software issues at my school.  Specifically, my programming classes uses an enterprise version of Microsoft’s Visual Studio.  This version includes support for developing unit test cases.  My students were able to use these Visual Studio features on the enterprise version of Visual Studio installed on the campus computers, but did not have these features on the version of Visual Studio installed on their personal laptops or home desktops.

Software testing is a subject that can be difficult to teach, perhaps because it relies heavily on experiential learning; at the same time, because it is an activity that most students do not enjoy, students tend to expend minimal effort on testing. (Smith et. al, 2012)

I quickly realized that requiring students to test their code solely on campus computers would mean that students would simply not test their code.  I had to find a way for my students to test their code on their own machines.  I reached out to some of my former colleagues to get some insight into how their contract developers which typically do not have offices tested their code.  These colleagues informed me that even though they use Visual Studio, they prefer third-party testing tools because they support a greater range of languages and provided better portability across Windows and MAC platforms.  I then realized that the important thing in software testing is to understand the methodology, and that many different tools can be used to teach testing fundamentals.

A great example of a third-party test tool is Jasmine.  I switched to this tool for my JavaScript/jQuery class to solve some of the issues mentioned above.  The tool is lightweight and runs in any browser on any platform.  Furthermore, the Jasmine website provides great tutorials on developing sophisticated test cases.  This turned out to be a great resource to help my students become better software engineers.

Jasmine test tool

References

<< Previous: 3D  Next: 3F>>