Software Testing - Testing Techniques

Why should I learn to solve Software Testing: Testing Techniques technical interview questions?

Learn and practise solving Software Testing: Testing Techniques technical interview questions and answers to enhance your skills for clearing technical interviews, HR interviews, campus interviews, and placement tests.

Where can I get technical Software Testing: Testing Techniques technical interview questions and answers with explanations?

IndiaBIX provides you with lots of fully solved Software Testing: Testing Techniques technical interview questions and answers with a short answer description. You can download Software Testing: Testing Techniques technical interview questions and answers as PDF files or e-books.

How do I answer Software Testing: Testing Techniques technical interview questions from various companies?

You can answer all kinds of Software Testing: Testing Techniques technical interview questions by practising the given exercises (short answer type). You can also find the frequently asked Software Testing: Testing Techniques technical interview questions with answers from various companies, such as TCS, Wipro, Infosys, CTS, IBM, etc.

1.
Can you explain boundary value analysis?
In some projects there are scenarios where we need to do boundary value testing. For instance, let's say for a bank application you can withdraw a maximum of 25000 and a minimum of 100. So in boundary value testing we only test the exact boundaries rather than hitting in the middle. That means we only test above the max and below the max. This covers all scenarios. The following figure shows the boundary value testing for the bank application which we just described. TC1 and TC2 are sufficient to test all conditions for the bank. TC3 and TC4 are just duplicate/redundant test cases which really do not add any value to the testing. So by applying proper boundary value fundamentals we can avoid duplicate test cases, which do not add value to the testing.
Software Testing Image

2.
Can you explain equivalence partitioning?
In equivalence partitioning we identify inputs which are treated by the system in the same way and produce the same results. You can see from the following figure applications TC1 and TC2 give the same results (i.e., TC3 and TC4 both give the same result, Result2). In short, we have two redundant test cases. By applying equivalence partitioning we minimize the redundant test cases.
Software Testing Image
So apply the test below to see if it forms an equivalence class or not:
  • All the test cases should test the same thing.
  • They should produce the same results.
  • If one test case catches a bug, then the other should also catch it.
  • If one of them does not catch the defect, then the other should not catch it.

3.
Can you explain random/monkey testing?
Random testing is sometimes called monkey testing. In Random testing, data is generated randomly often using a tool. For instance, the following figure shows how randomly-generated data is sent to the system. This data is generated either using a tool or some automated mechanism. With this randomly generated input the system is then tested and results are observed accordingly.
Software Testing Image
Random testing has the following weakness:
  • They are not realistic.
  • Many of the tests are redundant and unrealistic.
  • You will spend more time analyzing results.
  • You cannot recreate the test if you do not record what data was used for testing.

This kind of testing is really of no use and is normally performed by newcomers. Its best use is to see if the system will hold up under adverse effects.

4.
What are semi-random test cases?
Software Testing Image
As the name specifies semi-random testing is nothing but controlling random testing and removing redundant test cases. So what we do is perform random test cases and equivalence partitioning to those test cases, which in turn removes redundant test cases, thus giving us semi-random test cases.