The world is driven by beliefs. It may be in God or Technology. Over a period of time every society lay down a set of philosophies or values for better organization & operation. Similarly, any technology has its own fundamental principles which have been proven right as the time elapsed. ‘Software Testing’ is no different – it also has a set of 7 fundamental principles that are proven right over the time.
Will you start testing in parallel with development or only after the development is completed? What about testing at the code-level? i.e. code reviews to ensure best practices are followed. Will it only be reviews or will you actually run the application to identify defects? How about utilizing some automation tool to ease the process? Or will it be hybrid?
What’s your strategy & approach to career development? Already planned it? Or still planning? You can surely utilize some industry-proven techniques, right? Similarly ‘Software Testing’ is also a process which involves strategy, approach, proper planning & using the best techniques. But before jumping on to these terminologies, first & foremost – Test Strategy & Test Plan are actual documents whereas Test Approach & Test Technique are conceptual. Test Strategy document will include your project’s particular Test Approach, apart from other details.
This topic may seem simple to many, but despite of hundreds of web articles – Smoke, Sanity, Retesting & Regression are the most misunderstood topics in Software Testing. There is enormous amount of literature on the subject, but most of them are confusing. The following article makes an attempt to address the confusion. Before understanding these terminologies, first & foremost you need to understand the concept of Software Build.
How do you ensure test coverage? – One of the most common interview question. After all, client doesn’t want anything skipped in testing & then face the embarrassment of end-user failure in live application. What’s the basis for the Test coverage? Yeah! Requirements – functional, technical & non-functional – every single requirement needs to be tested. What if by mistake the Test team over-looked one of the requirement & didn’t write test cases for it? How will a Test Manager or Client come to know about it? ‘Requirement Traceability Matrix’!
Continuing on our previous articles – Comprehensive list of Software Testing Types | Agile, Acceptance, Beta & Ad-hoc are NOT the ‘Testing Types’ and Understanding different ‘Types of Software Testing’ (part I), let’s look at some other important Testing types. Before we proceed, reiterating the fact that please go through the basics “Attention! Get your facts clear before facing an interview!” to clarify most of the doubts about different Test terminologies.
Continuing on our previous article – Comprehensive list of Software Testing Types | Agile, Acceptance, Beta & Ad-hoc are NOT the ‘Testing Types’, let’s deep dive into the world of different Testing Types. (Hope you have gone through the basics “Attention! Get your facts clear before facing an interview!” to clarify most of the doubts about different Test terminologies.
Types of Software Testing define the different aspects of the software which you are going to cover as part of your Test efforts, i.e. the objective. Will it be only Functional? Or are you going to measure the system performance as well? What about the database schema? What if the Banking application you are testing is secure or not? Will it work on Mobiles as well? There are numerous Testing Types one can opt for now-a-days, for e.g. Functional, Security, Performance, Compatibility Testing, Database Testing, etc.
‘Methodology’ – means the same in Software Engineering as in English, a procedure. Yeah! You might be wondering then what’s all the fuss about it. Why so confusion. I too feel the same way. It’s just that too many methodologies have evolved since the inception of Software development & testing – different procedures applied to structure, plan & control the process (i.e. inception, requirement gathering, design, coding, testing & go-live).
Looking for Software Testing Interview questions? Let us start with basics…What’s the difference between a defect & a failure? What Test methodology did you follow? Which all methods did you use? You have worked at which all Test levels? How did you organize different Test cycles? Involved in what all Testing types? What about the Test artifacts – did you prepare any? Which technique did you use for Test Design or execution? Confused with these fundamental Software Testing Interview questions?
‘To make it Right, first identify what’s Wrong’ – but how? How do you identify what’s wrong? Intuition says – Just give me the application and I can find what’s wrong (defects), right? Nah! We are not workers, we are professionals. How do you build customer confidence with your ad-hoc tests? After all, Client is paying you to get the job done. And he/she wants ‘Quantitative’ reports & a ‘Quality’ product at the end. So how do you make sure that your Client is happy? Forget about Software Testing Life Cycle – in any Technical background, how do you make sure that your Client is super-happy @ the end?
To make it right, you first need to identify what’s wrong. And when it’s about finding the wrong in software, we call it “Software Testing”!