A colleague of mine recently asked me, "Where should I start with for preparation of interview? It's almost 2 years I have faced any interview."
My answer was straightforward: (This will help for fresher as well as working professional who want to switch the current job)
What you need to know about software testing?
First basic thing – Testing Concepts: One needs to be very good at this especially the manual testing methodologies. But only knowing different testing concepts is half work done. The next – most important thing is to know which type/technique/concept of testing can be applied at what stage of SDLC.
"What should I test and when" is very important. There might be some concepts, which are not applicable to what we, professional test in our company, but it's always better to have an idea of all testing practices.
Many freshers and working testing professionals have might not worked on various testing domains like localization testing, time Zone testing etc. But knowing more than what you have worked on will help you better answering the different questions from the interviewer. I always try to keep my testing knowledge updated besides my current project work. This helped me a lot while switching my job some years ago. What if an interviewer asks you question on topic, which you have never worked on? For example you don't have any experience on web based projects or client server testing and interviewer asks you to test "Yahoo mail application". Will you be able to answer this question? You can. Even you have not worked on this type of projects. How? Your curiosity to learn the things you never done before will help you in this case. So broaden your thinking area, be curious in every work and every query you face in your daily work routine.
Knowing more is harmless and will definitely help you at least to give your thoughts on the questions asked by interviewer.
If you don't know any testing concept, e.g. "Localization testing", then try to learn the concepts first. Like – what would be localization testing? It's simple; Test if the application looks local for you while using. Then go on exploring. See for used colors, content, images, culture etc, Different countries, locales have it in different way. Consider a web site that reads from right to left, is it accepted in countries other than Middle East? Obviously NO. Or can you display the same geo specific content in India what you can display in US? Again NO. This is just a simple example how you can learn unknown testing concepts. The very essential part of a test engineer is "Thinking out of box". If you are not capable of thinking out of box, believe me testing is not for you. What do you mean by thinking out of box? Don't just follow the traditional methods. Implement new things in testing. Try to summarize, automate the routine testing work. Think from user perspective. Think how user will use your application. What common mistakes he can make or which tasks he can perform on your application? This way you will get insight of any application and will also help to answer the questions in depth
Besides from "curiosity to learn" you should upgrade your skill in following areas:
- Some hands-on on basic database/SQL queries and concepts
- Any basic scripting language (For automation testing)
- Networking and system administration concepts will help you in system domain projects.
Do not just write the UI test cases, check what is happening inside the application. For application having database connection check for data updation, retrieving and in any case there should not be loss of data.
Get hold on project. Know the application under test before starting to test it. Instead of looking in the requirement document, look into the architecture doc, design doc, sequence diagram and activity flow diagram.
Most importantly you need to be perfect in what you mention in your CV. All the questions interviewer asks will be based on what you are specifying in your CV. So do not mention the skills you have not worked on, just for the sake of decorating the CV with multiple skills.
The key point in interview is, You should make interviewer feel that it was a complex application you were testing and had lot many challenges in it for a tester!