Sunday, July 3, 2016

Teaching QA Automation: What I Learned In The Latest Top Gun

Hello there!

Maciek Where Have You Been?

After a bit of an absence from my release, I'm back with another round of "insights" :) The past four months have been exciting, yet trying at the same time. It all begaGn with my trip to San Fransisco, for the \\Build2016 conference. I was very grateful to be given the opportunity to go back to the conference, and learned a crap ton of information. I specifically sparked my interest in Xamarin development, since it became a free tool, offerred by Microsoft, as opposed to a paid subscription for rich developers or companies :)

I came back from SF (San Fransisco) and immediately jumped into my latest version of the GUI Top Gun Training. 

Top Gun

In the infancy of the quality team I work with, the standard of automating was one person writing crappy VBScript in QTP. The "test framework" did not work, nor did it execute any test cases at any regular intervals. At that time, I was put into the position of "QA Lead" and handed over the keys to the automation kingdom. With the help of my buddy, the other QA Lead, and a senior developer, we designed a training, the goal of which, was to bring a hand code driven, pattern oriented design to our GUI automation efforts. 

We designed what morphed into a 6 week hands on training course, designed to turn manual testers into test engineers, who had the ability and excitement to spit out C# GUI Automated test cases, based on an adapted page object modelling pattern, using the Coded UI framework. 

We couldn't find engineers in Detroit who knew how to code and wanted to write test code. So we decided to train our own people to do just that.

The Latest Top Gun: Challenges Everywhere

After going through three iterations of the training and effectively converting about 10 folks from manual testers to test engineers, we came upon our biggest challenge yet. The latest intake of top gunners was no longer small, nor was it homogeneous with respect to background. 

GUI Top Gun morphed into a cross company training program. We had team members from my company and team members from the largest independent mortgage company, who had heard about Top Gun. We had team members who lived in California, and Florida. We had interns, we had full time team members...and we had me to instruct them all as effectively as possible :S The team was great, but it was definitely diverse.

The Biggest Challenge: Diversity of Communication

GUI Top Gun had experienced traditional diversity before.We taught folks with QA experience, and without. We even had one team member from a different company, but this time, the biggest challenge was how to incorporate team members who worked remotely. 

We knew that teaching coding for GUI automation was tough in person, and had a bit of a flavor in the past with some of our instructors working remotely at some times, but nothing like what we were facing this time. 

Of our 11 team members, 3 were working remotely. The thing with even one person working remotely, is that you have to make them feel as part of the conversation, as the folks 'in the room'. Traditional approaches such as conference calls, or even video calls, just don't cut it. The communication bandwidth is just not high enough. Even while keeping a focus on the fact that someone is "on the call", the person on the phone can not hear what is exactly going on in conversation in the room. Most importantly, the person on the phone cannot see and experiences the communication nuances that are happening in the physical communication, through body language. Even if the folks on the phone are super aware of their situation, and keep asking for repetition when they do not understand what is going on, they still miss out on the non verbal communication queues.

The Solution To The Communication With Remote Team Members: Equality of Medium

The answer to the communication problem as we experienced, was normalcy of communication methods. To ensure that all team members had exactly the same communication bandwidth, we forced nearly all conversations to happen over the phone, and through remote communication tools such as WebEx's Training Center. 

The initial plan for the program was to run the first week as a full time training on the phone, using WebEx Training Center as the lecture and interaction tool, and then get into a "War Room" to facilitate team member interaction. After that first week, we realized that although talking to people face to face was easy, talking to them on a headset and sharing a screen, was not that much harder, and it included everyone. It took a few days for team members who usually don't communicate over a headset to get used to the process, but once they did, most team members did not mind the approach. All of our lectures, and group sessions were facilitated through this medium, and we encouraged our team members to use the format when solving problems in small groups. 

At the end of the program, we got overwhelming positive feedback about the usefulness of the medium, and the personal approach it provided. Remote team members loved it, and team members who usually do not deal with remote team members learned a new approach to communication, and also expressed a positive experience from it.

The approach also allowed us to use WebEx Training Center to record all training sessions and archive them for future viewing. We now have a catalogue of all theory sessions recorded during the Top Gun GUI training program for future viewing by team members interested in automated GUI testing. 

All in all, I used to hate on remote training tools. But after this round of Top Gun GUI, I love them. 

Image result for headset clipart

No comments:

Post a Comment