The human context of quality

Performance testing checked off

Posted on 2011-Oct-12 at 02:55

Last June I took a new job as a Software Engineer in Test at a new company. It was a good opportunity to get my career on a different track, and over three months later I still feel pretty good about the move.

Almost immediately I became part of a team working on performance testing for a major software release. I had never done performance testing before, and the product (a web application written in Java) had never been tested that way before either, so it was a good opportunity to learn and do some work that was very visible and much appreciated. After hundreds of hours of running and monitoring tests though, I am pleased to say that project is finished.

 

The project was different in that it did not focus on the usual "user profile" type approach to performance testing. The load tests did not attempt to create "typical" user activity. Rather they focused on a particular part of the application to put load in that area, while a Coded UI test was doing similar operations in the same functional area, and the response time of the Coded UI test was measured precisely. Also, the tests were run at various loads and comparing new code (after a major software upgrade) with old code to determine where performance had improved or degraded. We also tested with various debugging tools running to track garbage collection, blocked threads, and such. In the process our team found and fixed several performance bottlenecks (due to synchronized code blocks that should have been thread-safe instead).

 

I used MS Load Test in Visual Studio 2010 with the individual tests being MS WebTests. I had not used WebTests before, and while they are very powerful, their limitations quickly became clear also. Because WebTests operate on the HTTP level, operations that require interaction with JavaScript dialogs (for example) simply do not get recorded and cannot playback. Also, for complex applications like the product I am testing, using Extraction Rules is essential. I had to write several custom extraction rules in order to get all the tests to work.

 

I have been told that for the next release I will get my pick of what I want to work on, having taking on a tough task for the team. I am glad to be able to say I have done performance testing, but I do not want to make a career of it.


Last Page | Page 2 of 15 | Next Page
To realize that you do not understand is a virtue; Not to realize that you do not understand is a defect.
Lao Tzu

Friends