Covid-19 Update!!    We have enabled all courses through virtual classroom facility using Skype or Zoom.    Don't stop learning.    Enjoy Learning from Home.

30% Discount Python        30% Discount Webdesign        30% Discount SEO        30% Discount Angular8        Free SQL Class        Free Agile Workshop       Free HTML Sessions        Free Python Basics

Software Testing Interview Questions and Answers

Software Testing Interview Questions and Answers

1. What is Software Testing?

Software testing is the process of analysing a system to check if it serves its business requirements. It measures the overall quality of the system in terms of attributes like correctness, completeness, usability, performance etc. Basically, it is used for ensuring the quality of software to the stakeholders of the application.

2. Why is testing required?

We need software testing for following reasons :

1. Testing provides an assurance to the stakeholders that product works as intended.
2. Avoidable defects leaked to the end user/customer without proper testing adds bad reputation to the development company.
3. Defects noted earlier phase of SDLC results into lesser cost and facilities utilisation of correction.
4. Saves development time by finding issues in earlier phase of development.
5. Testing team adds another dimension to the software development by producing a different view point to the product development process.

3. What is Quality Control?

Quality control is product driven application which checks that the developed product conforms to all the specified needs. It is examined as a corrective measure as it tests the built product to find the defects. It involves various types of testing like functional testing, performance testing, usability testing etc.

4. What is the difference between Verification and Validation?

Following are the major differences between verification and validation-
#VerificationValidation
1.Verification is the process of evaluating the artifacts as well as the process of software development in order to ensure that the product being developed will comply with the standards.The process of validating that the developed software product that follows to the specified business needs.
2.It is static process of analysing the documents and not the actual end product.It involves dynamic testing of software product by running it.
3.Verification is a process oriented approach.Validation is a product oriented approach.
4.Answers the question - "Are we developing the product right?"Answers the question - "Are we developing the right product?"
5.Errors found during verification require lesser cost/resources to get fixed as compared to be found during validation phase.Errors found during validation require more cost/resources. Later the error is located higher is the cost to fix it.

5. What are the different types of testing?

There are two types of testing. They are:
Functional testing - Functional testing include validating the functional specifications of the system.
Non Functional testing - Non functional testing involves testing the non-functional requirements of the system like performance, security, scalability, portability, endurance etc.
Going by the way the testing is done, it can be categorized as-
Black box testing - In black box testing, the tester need not have any knowledge of the internal architecture or implementation of the system. The tester interact with the system through the interface supply the input and validating the received output.
White box testing - In white box testing, the tester analyses the internal architecture of the system as well as the quality of source code on different parameters like code optimization, code coverage, code reusability etc.
Gray box testing - In gray box testing, the tester has partial approach to the internal architecture of the system e.g. the tester may have approach to the design documents or database structure. This information helps tester to test the application better.

6. What are some attributes of a test case?

A test case can have following attributes-

1. TestCaseId - A special identifier of the test case.
2. Test Summary – One liner overview of the test case.
3. Description - Detailed description of the test case.
4. Prerequisite - A set of prerequisites that must be followed before performing the test steps.
5. Test Steps - Detailed steps for executing the test case.
6. Expected result - The expected result in order to proceed the test.
7. Actual result - The actual result after performing the test steps.
8. Test Result - Pass/Fail status of the test execution.
9. Automation Status - Identifier of automation, whether it is automated or not.
10. Date - The test execution date.
11. Executed by - Name of the person performing the test case.

7. What is a test script?

An automated test case written in any programming or scripting language. These are normally a set of instructions to evaluate the functioning of an application.

8. What is a bug?

A fault in a software product found at the time of testing, causing it to function in an unanticipated manner is called a bug.

9. What is defect density?

Defect density is the measure of density of the defects in the system. It can be calculated by dividing number of defect identified by the total number of line of code(or methods or classes) in the application or program.

10. What is a defect?

A defect is non-conformance with the need of the product detected in production (after the product goes live).

11. What are some defect reporting attributes?

Few defect attributes are :

  • DefectId - A special identifier of the defect.
  • Defect Summary - A one line overview of the defect, more like a defect title.
  • Defect Description - A detailed description of the defect.
  • Steps to reproduce - The steps to reproduce the limitation.
  • Expected Result - The expected behaviour from which the application is changing because of the defect.
  • Actual Result- The current mistake state of the application w.r.t. the defect.
  • Defect Severity - Based on the analytic of the defect, this field can be set to minor, medium, major or show stopper.
  • Priority - Based on the important of the defect, this field can be set on a scale of P0 to P3
  • 12. What are the bug or defect management tools?

    The Defect Management tools are - Jira, Bugzilla, Redmine, Mantis, Quality Center etc.

    13. What is defect priority?

    A defect priority is the urgency of the fixing the defect. Normally the defect priority is set on a scale of P0 to P3 with P0 defect having the most urgency to fix.

    14. What is a test scenario?

    A test scenario is obtained from a use case. It is used for end to end testing of a feature of an application. A single test scenario can cater various test cases. The scenario testing is particularly useful when there is time constraint while testing.

    15. What is a test plan?

    A test plan is a normal document representing the scope of testing, the application to be used, and resources needed for time estimate of carrying out the testing process. It is derived from the requirement documents (Software Requirement Specifications).