You have been through it all. went to college, studied software testing, got to love the field etc. but at the end of it all you are not sure where and how to start on your career path to become a successful software tester.
Here are some tips I learned along the way. Hope they help you reach where you want to.
A good testing team would comprise of
-
An expert in the field A test automation expert
-
A naturally curious and intuitive person (a good tester)
The above combination provides the best results as it has a little of all the essential components. The expert is able to guide the tester on what is wrong and what is expected when he comes up with a suspected bug in the software. The automation expert makes life easier by automating old test cases. This also means that more time is being spent constructively in thinking up newer test cases. Neither of the above three are restricted to their responsibilities and can very well contribute in each others work if they have the skills. For instance, in most places, all three of them are actively involved in thinking up new and innovative test cases.
Therefore to be a complete tester you would need a little of all the above. It would be beneficial to develop the following skills:
-
Domain expertise Learn to be devious. (Dr. Hevners favorite quote!) True, after all you are here to break software :-).
-
Technical Knowledge
-
Testing Skills
1. Domain expertise
This is one area where you cannot do much without work experience. Its a kind of a vicious circle. You need some domain knowledge to get a job whereas you need a job to get the required domain knowledge. Whether it is the banking sector, Insurance, healthcare or sports you need a good exposure. I'm sure beginners to any field face this problem. Of course you may read a lot and almost make up for it. In fact reading, joining discussion groups on the internet, attending seminars etc. go a long way in helping you get started.
Hence, I suggest you focus strongly on the following two skills.
2. Technical Knowledge
If you are in school, find out if you have a course in Software Testing. A formal education in software testing introduces you to several techniques that are not always taught at the workplace. Just like they expect you to know programming when you apply for a software developers job, you are expected to know certain testing techniques as a tester. Check out the course "CIS 6930: Seminar on Software Testing" taught by
Professor Dr. Alan Hevner at the University of South Florida (USF) at
http://www.usf.edu. for testing courses in other Universities besides USF:
http://www.testingeducation.org/general/othertestingcourses.php
Get trained and exposed to test automation tools. They are not as easy as they seem. Test automation isnt all about 'record and playback'. There is much more to it. Most tools nowadays are very complex. That is why it warrants a dedicated person or even a team to write manage and maintain test scripts. With the size of software projects increasing by the day, test case automation has become a necessity in most organizations. Being skilled in one could make you a valuable asset to the company that hires you.
3. Testing Skills
- Learn to look for the unobvious
- Learn to be persistent. Tough bugs are sometimes hard to reproduce. Try, try, try until you get it.
- Learn to be polite. You will need this skill when reporting bugs
- Learn to think out of the box
Finally, no package is complete without the attractive wrapping. :) True, every profession needs effective people skills and a software tester needs it more than anybody else! Imagine telling a developer his brainchild, his hours of work, his code is faulty. The main point to note here is that man is a social animal and team work really works! (Read my testing blog entry on social growth) An effective team worker is not the one who manages to complete a job by himself/herself amongst uncooperative team members, but the one who manages to influence every member of the team to do their part and complete the job efficiently. A good read on this topic is entry number 8 in my list of recommended reading below.
Last but not the least, always follow the software engineering code of ethics and professional practices. It is one of the keys to success!
Software testing is one of the most interesting and challenging fields. However, there aren't as many resources available on the Internet as one would find for software development. The Software Testing and Quality Assurance domain is relatively young. Hence this endeavor to collect and share as much information about testing as I can on this site. Hope the following links are useful. If you do have any new links to share, then feel free to send me an email.
WinRunner vs. QTP:
http://www.asi-test.com/WinRunner_vs_QTP.htm
Furthermore, I am also making available for download, the CSQA/CSQE/CSTE study material that I have been able to collect over time. It comprises of sample question papers and study material. It will greatly aid those planning for certification in the near future.
My Thoughts
Test Tools Reference
Unit test tools:
http://www.testingfaqs.org/t-unit.html
Rational Robot:
http://www.wilsonmar.com/1robot.htm
WinRunner user guide and tutorial :
http://wilsonmar.com/1winrun2.htm
Free Cascading Style sheet validator:
http://jigsaw.w3.org/css-validator/
Free HTML validator:
http://validator.w3.org/
QA Downloads.com:
http://www.qadownloads.com/
OpenSTA (Open Source Performance Testing Tool): http://www.opensta.org/

Quality and Testing Sites
Stickyminds.com:
http://www.stickyminds.com
STQE magazine:
http://www.stqemagazine.com
Brian Marick's testing website:
http://www.testing.com/
QACity.com:
http://www.qacity.com/
Software testing hotlist:
http://www.io.com/~wazmo/qa/
Extreme testing:
http://www.geocities.com/xtremetesting
Model based testing:
http://www.model-based-testing.org
Software Test & Performance magazine:
http://www.stpmag.com (PDF version of magazine available for free!)
Effective software testing:
http://www.effectivesoftwaretesting.com
TheRationalEdge Monthly eZine: http://www.therationaledge.com
SISQA (Lots of CSTE study material available here
): http://www.sisqa.com
Software Testing User Groups and Communities
Here is a list of professional user groups that you can join to further your interests in QA and testing.
SPIN (Software Process Improvement Network): http://www.sei.cmu.edu/collaborating/spins/
Software Testing Education Testing courses in other Universities besides the University of South Florida (USF): http://www.testingeducation.org/general/othertestingcourses.php
Recommended Reading
Listing of independent automation engineers: http://www.sqa-test.com

Testing blogs and Other lnteresting Reads :)
Greg's blog on what makes a good test engineer: http://blogs.msdn.com/chappell/archive/2004/03/26/97003.aspxGretchen's blog on testing: http://weblogs.asp.net/jobsblog/archive/2004/03/23/95037.aspxJosh's blog on testing talents: http://blogs.msdn.com/jledgard/archive/2003/09/26/53667.aspxGreg's blog on automated testing basics: http://blogs.msdn.com/chappell/articles/106056.aspx
Sara Ford's blog on testing: http://blogs.msdn.com/saraford
Nihit Kaul's blog on testing: http://blogs.msdn.com/nihitk
Siva's blog on testing:
http://geekswithblogs.net/srkprasad
Mozilla Firefox and Thunderbird QA team's blog: http://weblogs.mozillazine.org/qa/
Interviews by prominent testers: http://www.whatistesting.com/interviews/
Test Automation using the .NET framework: http://msdn.microsoft.com/msdnmag/issues/03/01/UITestAutomation/default.aspx
Microsoft UI Automation Framework (Releasing Soon!): https://www.microsoft.com/enable/at/uiadeveloper.aspx
Microsoft UI Automation Framework (Releasing Soon!): https://www.microsoft.com/enable/at/uiadeveloper.aspx
Harry Robinson's article on Stickyminds.com:
http://www.stickyminds.com/sitewide.asp?ObjectId=8299&Function=DETAILBROWSE&ObjectType=COL
Bumper stickers for software testers (compiled from the article above):
http://www.geocities.com/harry_robinson_testing/BumperStickers.htm
- Cem Kaner et al's, "Testing Computer Software"
- Dorothy Graham, "Software Test Automation"
- Edward Kit, "Software Testing in the Real World"
- Elfriede Dustin, "Automated Software Testing"
- Hung Quoc Nguyen, "Testing Applications on the Web"
- Steve Splaine & Stefan Jaskiel, "The Web Testing Handbook"
- Rex Black, "Managing the Testing Process" (My rating * * * * * )
- Gerald M. Weinberg, "Secrets of Consulting: A Guide to Giving and Getting Advice Successfully" (Not about testing, but a must read by every tester! Helps communicating effectively with developers. managers and the rest of your team.)
Useful Articles, Presentations and Tutorials
Read one of my favorite articles by Rex Black (Being a good tester): http://www.rexblackconsulting.com/publications/Being%20a%20Good%20Tester.pdfLooking for a job? More than 200 software testing interview questions here!: http://www.geocities.com/xtremetesting/InterviewQuestions.htmlQuality classics ('Hawthorne Effect', 'Pareto Optimum, etc.): http://www.artwork.net/asq711/quality.htmCem Kaner's articles: http://www.kaner.com/articles.htmlCem kaner's "Recruiting Software Testers" http://www.sdmagazine.com/documents/s=748/sdm0001e/0001e.htm (Very good article. Need to register. Registration is free)Rex Black's publications: http://www.rexblackconsulting.com/Pages/publications.htmCartoon illustration of Deming's 14 points: http://www.managementwisdom.com/freilofdem14.html (A picture is worth a 1000 words!)Drivers and Stubs: http://galileo.cs.uwindsor.ca:8000/60-322/extra/drivers_stubs.htmVisual studio coding tips & tricks: http://www.agiledeveloper.com/articles/VSDOTNETCodeEditingTipsAndTricks.pdfgraph theory tutorial: http://www.cs.wpi.edu/~gpollice/cs525t-f02/Slides/CS525T-Class9.ppt
Agile developer presentations:
http://www.agiledeveloper.com/download.aspx
Verification Vs. Validation:
http://www.globaltester.com/sp1/define_vv.html
Software tester salaries:
http://www.softwaretestinginstitute.com/salaries.html (Slightly outdated, but still gives a good idea!)
Fundamentals of Function Pont Analysis:
http://www.ifpug.com/fpafund.htm
Paper on model based testing:
http://www.geocities.com/model_based_testing/intelligent.pdf
