I am a postgraduate student and want to become a software tester after graduation. I have no work experience, but when I read some stuff about the traits a software tester should have I can relate to most of them. But I am wondering like what technical skills I should have to start a career in s/w testing, something that adds value to my CV. Could you please give me some tips for starters (or anything you feel that will be helpful). Looking forward for your comments. Thank you.
Even though most companies will look after people with experience in the field, you don`t need to worry yourself about that because there are a lot of entry-level available as well. My advice would be to not limit yourself to what books say, this thing mostly revolves around poking a bee hive with either a stick, or a flamethrower, depending on the needs.
Also, being a tester won
t always imply testing stuff, most of the time youll probably end up dealing with tons of documentation that you have to get familiar with so that you can start building your test framework accordingly.
Good part is that it can be very rewarding at times. For example you
ll start a new project that might scare you with the fact that you wont know little or nothing about the tools/environment etc, but once you get past that and look back, you`ll be amazed by what you accomplished.
So yes, sorry about the mini blog post but I could go on for pages.
If you have any questions I`d be more than happy to help you along.
In addition to some of the previous suggestions, I have found a couple of specific languages/products particularly useful, especially as you may progress into test automation. One is Python - it is a fantastic language to work with, particularly if you do not have a lot of programming experience in your background, and lends itself very well to automated testing - www.python.org. Another is AutoIt, which is a great tool for automating GUI interactions with a VB-like scripting backend - www.autoitscript.com.
I have also found some of the work of Cem Kaner to be particularly insightful in the software testing field. A great book for someone just getting into the field is "Lessons Learned in Software Testing" by Kaner, Bach and Pettichord.
For software tester, I assume you aim not at career in manual testing, but in testing automation.
It is special kind of programming, where you automate interaction with (in most cases) web-based application, making sure that results are as expected - that's why gurus like Cem Kaner prefer to use "automated checking" for this activity - it is done by computer. What manual testers do, Cem prefers to call "sapient testing". You need to understand the problem area, to be able to see that results on screen are not what they should be if application worked correctly.
Both testers are important, and you cannot automate process if you cannot perform it manually. You automate subset of activities which make economic sense (because automating consumes resources first, then later saving them if you perform same test repeatedly).
For test automation, you need to learn programming language (to write tests in). Python is excellent choice. Especially as beginner programmer, you will be substantially more productive in Python than in say Java. There are free Python courses all over internet. And later, when you know python: tool to allow Python program to pretend it is a user of tested website is Selenium.