Home > Ask the Software Quality Experts > Software Testing and Quality Assurance Questions & Answers > Skills you need to further your software testing career
Ask The Software Quality Expert: Questions & Answers
EMAIL THIS

Skills you need to further your software testing career

John Overbaugh EXPERT RESPONSE FROM: John Overbaugh

Pose a Question
Other Software Quality Categories
Meet all Software Quality Experts
Become an Expert for this site


Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us   


>
QUESTION POSED ON: 10 December 2008
I am working as a black box tester on Web applications. I want to improve my technical skills and am wondering what type of skills I should learn to help me further my career.


Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us   



RELATED CONTENT
Software Testing and Quality Assurance
Why do performance testers write new scripts so often?
How to create performance testing workload models
Fixing Web application performance troubleshooting problems
Expert advises on implementation of Selenium IDE for effective software testing
When should regression testing occur in an automated test plan?
Achieving peak performance in integration testing
Getting answers about OpenSTA script problems
Defining core software regression tests
Breaking in functionality on UI application pages
Where to find good methodology guides for software testing

Software testing and quality assurance (QA) fundamentals
How to deal with iteration issues in Agile
Five steps to fostering better software tester and QA results
Software Testing: New software testing technologies bring new challenges
Testing strategies for complex environments
Astronaut's STPCon advice: Teamwork delivers "The Right Stuff"
How to make your software tamperproof
Software consortium seeks standard quality metrics
Demo: Using WebGoat, a free software testing tool
Seven steps for a quality change and configuration management program
Winning responses to "Why is QA always the bottleneck?"

Hiring, mentoring and training for software projects
Is your software test team rigorously incompetent?
Advice on how to enter the software technology field
Optimizing project management using text messaging, IMs, and Skype
How to get a software testing job in a recession
Does Microsoft offer an international testing certification?
How to handle IT project management in a recession
How teams transition to agile development methodologies
Do security certifications really matter? Yes, really
Cutting staff for a more agile software development team
Software development lifecycle (SDLC) trends 2009: Requirements, agile

RELATED GLOSSARY TERMS
Terms from Whatis.com − the technology online dictionary
build  (SearchSoftwareQuality.com)
code review  (SearchSoftwareQuality.com)
conformance testing  (SearchSoftwareQuality.com)
error handling  (SearchSoftwareQuality.com)
garbage in, garbage out  (SearchSoftwareQuality.com)
load testing  (SearchSoftwareQuality.com)
NUnit  (SearchSoftwareQuality.com)
quality assurance  (SearchSoftwareQuality.com)
stress testing  (SearchSoftwareQuality.com)
white box  (SearchSoftwareQuality.com)

RELATED RESOURCES
2020software.com, trial software downloads for accounting software, ERP software, CRM software and business software systems
Search Bitpipe.com for the latest white papers and business webcasts
Whatis.com, the online computer dictionary


When it comes to testing, as a manager I am concerned about two things: effectiveness and efficiency. Effectiveness is about how well we measure the quality of the system under test (meaning what level of confidence we can gain about its adherence to requirements) and how many defects we discover, fix, and regress. Efficiency is about how many resources it takes to accomplish that task. So when a tester asks me how they can improve their skills, I focus on learning and development, which includes those areas.

More information on software tester skills:
Skills for entry-level software testers

Ten skills of highly effective software testers

How to specialize in performance testing

First, let's look at effectiveness. Anything that helps you test more deeply, cover more ground, or find more bugs is going to be beneficial. In Web testing, I find that having a strong knowledge of HTML and CSS, HTTP and HTTP Web servers, JavaScript, and now rich Internet application (RIA) technologies such as Ajax, Silverlight, and Flash are extremely helpful. Knowing HTML and CSS is self-evident. You want to be able to quickly find errors in layout and styling, freeing the developers from debugging this on their own. Understanding HTTP and Web servers is important for lower-level communications issues and for troubleshooting communication problems. Finally, scripting languages are the basis of nearly every commercial website. Script errors abound (especially because JavaScript is a runtime language and really can't be stepped through easily), and testers need to be able to catch those errors with code reviews and other methods.

Efficiency to me is mostly about automation — it's about being in more than one place at the same time. By writing good automation (catches true failures, does not report false passes, runs in many environments, and lasts the product cycle), you accomplish several things. First, you continue to validate product quality even if you, personally, are not executing the tests. Second, you generally execute test cases more quickly — this encourages developers to run these cases even before checking in. You speed up the turn-around time (known as the feedback loop) on the code-defect discovery-defect remediation cycle. Finally, you enable yourself to test on many configurations at the same time. Common automation skills are familiarity with xUnit test harnesses, ability to use Selenium and Selenium RC, Watij or Watin, and good skills in development in languages such as Java and .NET.

You're probably thinking that I failed to bring up skills using tools such as IBM's Rational Robot, HP's Loadrunner, HP's Winrunner, and such. These are very important niche skills that a Web application tester can use to differentiate himself. (They really didn't fit well in my effective/efficient paradigm though.) Understanding how and when to apply tools in performance, stress, and security testing realms is a great way to improve your career. The logical step in a tester's career is to branch out and select specific tools to excel in.

If you want to stay at your current company, pick tools most commonly used for those automated testing categories. If you are looking to move to another company or into another industry niche, understand the tools in common use and develop skills in them. Many commercial tools have limited trial versions available. You may not be able to run a full load test with trial versions of the tools, but you can definitely learn how to use them. But keep in mind: Understanding what's happening in your system when you run these tools is more important than just learning how to use them.

In 2007, I wrote a series of articles on my blog titled "How to Become a Better Tester." This blog series will give you more detailed steps you can take in developing your career.

All the best!




Search and Browse the Expert Answer Center
Search and browse more than 25,000 question and answer pairs from more than 250 TechTarget industry experts.
Browse our Expert Advice



Software Quality - Software Maintenance, Software Requirements, Software Standards
About Us  |  Contact Us  |  For Advertisers  |  For Business Partners  |  Site Index  |  RSS
SEARCH 
TechTarget provides technology professionals with the information they need to perform their jobs - from developing strategy, to making cost-effective purchase decisions and managing their organizations' technology projects - with its network of technology-specific websites, events and online magazines.

TechTarget Corporate Web Site  |  Media Kits  |  Site Map




All Rights Reserved, Copyright 2006 - 2009, TechTarget | Read our Privacy Policy
  TechTarget - The IT Media ROI Experts