SQA Questions and Concepts




Note: We have mentioned "IMP" with all the most important questions which are usually asked in interviews.



Question 1: What is Quality? (IMP)
The standard of something as measured against other things of a similar kind or the degree of excellence of something.

Question 2: What is Quality Assurance? (IMP)
QA refers to the planned and systematic way of monitoring the Quality of process which is followed to produce a quality of the product. (QA tracks the outcomes and adjusts the process to meet the expectations.)

Question 3: What is Quality Control? (IMP)
QC Concern with the Quality of the product. QC finds the defects and suggests improvements. The process set by QA is implemented by QC.

Question 4: What is Software Testing?
Software testing is the process of ensuring that the product which is developed by the developer meets the user requirements. The motive to perform testing is to find the bugs and make sure that they are fixed.


Question 5: What is the difference between Bug and Defect? (IMP)
A bug is the result of a coding error. A defect is a deviation from the requirements.

Question 6: What is the difference between the test case and test scenario? (IMP)
One Scenario can have multiple test cases like to test a login button is one scenario and there would be multiple test cases to test this scenario.

Question 7: What is the difference between the verification and the validation? (IMP)
Verification is done at the start of the development process. It includes reviews, meetings to evaluate requirement and specifications. It answers the question like: Am I building the product, right?
Validation is done at the end of the development process and takes place after verification is done. It answers the question like: Am I building the right product?
A product can pass while verification, as it is done on the paper and no running or functional application is required. But when the same points which were verified on the paper are actually developed then the running application or product can fail while validation. During verification, if some defects are missed the during validation it can be caught.


Question 8: What is Static Testing?
In static testing, we can test and find defects without executing code. Static Testing is done during the verification process for example:  reviewing, walk-through, inspection, etc. Static testing is the testing of the software work products manually, or with a set of tools, but they are not executed.

Question 9: What is Dynamic Testing?
In dynamic testing, the software code is executed to demonstrate the result of running tests. It’s done during the validation process. For example Smoke testing, Sanity testing, Functional testing etc.

Question 10: What is a Defect or Bug life cycle? (IMP)

The defect life cycle is a cycle in which a defect goes through during its lifetime. It starts when a defect is found and ends when a defect is closed, after ensuring it’s not reproduced. The defect life cycle is related to the bug found during testing.





  1. New: When the defect is logged and posted for the first time. Its state is given as new.
  2. Assigned: After the tester has posted the bug, the lead of the tester approves that the bug is genuine and he assigns the bug to the corresponding developer and the developer team. Its state is given as assigned.
  3. Open:  At this state the developer has started analyzing and working on the defect fix.
  4. Fixed:  When developer makes necessary code changes and verifies the changes then he/she can make bug status as ‘Fixed’ and the bug is passed to the testing team.
  5. Retest:  At this stage, the tester does the retesting of the changed code which the developer has given to him to check whether the defect got fixed or not.
  6. Verified:  The tester tests the bug again after it got fixed by the developer. If the bug is not present in the software, he approves that the bug is fixed and changes the status to “verified”.
  7. Reopen:  If the bug still exists even after the bug is fixed by the developer, the tester changes the status to “reopened”. The bug goes through the life cycle once again.
  8. Closed:  Once the bug is fixed, it is tested by the tester. If the tester feels that the bug no longer exists in the software, he changes the status of the bug to “closed”. This state means that the bug is fixed, tested and approved.
  9. Duplicate: If the bug is repeated twice or the two bugs mention the same concept of the bug, then one bug status is changed to “duplicate “.
  10. Rejected: If the developer feels that the bug is not genuine, he rejects the bug. Then the state of the bug is changed to “rejected”.
  11. Deferred: The bug, changed to deferred state means the bug is expected to be fixed in next releases. The reasons for changing the bug to this state have many factors. Some of them are priority of the bug may be low, lack of time for the release or the bug may not have a major effect on the software.
  12. Not a bug:  The state is given as “Not a bug” if there is no change in the functionality of the application. For an example: If the customer asks for some change in the look and field of the application like a change of colour of some text then it is not a bug but just some change in the looks of the application.

Question 11: What is the difference between severity and priority? (IMP)
Severity: It is the extent to which the Defect can affect the software. It defines the impact of a defect on the software. For example, if an application or web page crashes when a remote link is clicked, in this case clicking on the remote link by a user is rare but the impact is great. So the severity is high but priority is low.

Priority: It defines the order in which we should resolve the bug. Should we fix it now or can it wait?  This priority status is set by the tester to the developer mentioning the time frame to fix the defect. If high priority is mentioned then the developer has to fix it at the earliest. The priority status is set based on the customer requirements. For example: If the company name is misspelt in the home page of the website, then the priority is high and severity is low to fix it.

High Priority & High Severity: An error which occurs on the basic functionality of the application and will not allow the user to use the system (E.g. user is not able to login to the application).

Question 12: What is Test strategy? 
It is a high-level document which defines the approach for software testing. It is basically derived from the Business Requirement document. Test strategy is developed by the project manager or business analyst. It is kind of static document which sets the standards for testing so not updated often.
Test strategy contains:

  • Scope and objective: The objective of the business and how much testing scope is there is defined under test strategy.
  • Business Issues: How much is the budget of the project, how much time is required for testing, how much resources are needed etc. are the part of business issues which needs to be considered before the actual testing starts.
  • Testing approach: What type of testing is needed (performance, load, stress, functional etc.) and whether the testing is only manual or automation or both are some of the crucial points which defines the testing approach.

Question 13: What is Test Plan?
It is derived from SRS (Software Requirement Specification) which is prepared by test lead or manager. The main goal of the test plan is to include all the details related to testing such as what to test when to test, how to test and who will be the tester. A test plan is often not updated but if there is some new feature or change is introduced then it has to be updated accordingly.

Test plan contains:

  1. Testing cycle start/end dates
  2. Major roles and responsibilities/overall resources
  3. Testing environment
  4. Major risks and how to handle these risks
  5. Defect reporting
  6. Testing end date

Question 14: What is a Test Environment?
A testing environment is a setup of software and hardware for the testing teams to execute test cases. In other words, it supports test execution with hardware, software and network configured.
Every test may not be executed on the local machine. It may need establishing a test server, which can support applications.
Key areas to set up in Test Environment:
For the test environment, a key area to set up includes
  1.  System and applications
  2. Test data
  3. Database server
  4. Frontend running environment
  5. Client operating system
  6. Browser
  7. Hardware includes Server Operating system

Question 15: What are the Software Development Models?
The software development models are the various Approaches that are being selected for the development of the project depending on the project’s aims and goals.
There are various Software development models or methodologies. They are as follows:
  1. Waterfall model
  2. Agile Model
  3. V model
  4. Incremental model
  5. RAD model
  6. Iterative model
  7. Spiral model
  8. Prototype model

Different companies based on the software application or product; they select the type of development model whichever suits to their application. But these days in the market the Agile Methodology is the most used model.
Waterfall Model is a very old model. Waterfall model works well for smaller projects where requirements are very well understood.
In ‘Waterfall Model’ testing starts only after the development is completed. Because of which there are many defects and failures which are reported at the end. So, the cost of fixing these issues is high. Hence, these days people are preferring ‘Agile Model’.

In ‘Agile Model’ after every sprint there is a demo-able feature to the customer. Hence the customer can see the features whether they are satisfying their need or not.
Each release is thoroughly tested to ensure software quality is maintained. 

Question 16: Define Scrum?
Scrum is an agile way to manage a project, usually, software development, think of it as a framework for managing a process.
The Scrum Team consists of a Product Owner, the Development Team (Dev & QA), and a Scrum Master (Project Manager).    

Question: What is the Traceability Matrix?
It is a document that maps and traces user requirement with test cases. The main purpose of Requirement Traceability Matrix is to see that all test cases are covered so that no functionality should miss while doing Software testing.       




Question 17: What is the difference between build and release? (IMP)
“Build” is a developed application that is given by the development team to the software testing team for testing purpose. A “release” is an official launch of the application for the customers. A build when tested and passed by the software testing team, then this is provided to the customers as “release”


Question 18: Explain SDLC? (IMP) 
SDLC stands for software development lifecycle. SDLC is a series of steps that provide a model for the development and lifecycle management of an application or piece of software.

There are following phases in every Software development life cycle model:

    1. Requirement gathering and analysis
    2. Design
    3. Implementation or coding 
    4. Testing
    5. Deployment/Release
    6. Maintenance
Requirements Gathering and Analysis:
This is a process with much communication taking place between stakeholders, end-users and the project team. Meetings with managers, stakeholders and users are held in order to determine the requirements like; who is going to use the system? How will they use the system?  What data should be input into the system?  What data should be output by the system?  These are general questions that get answered during a requirement gathering phase.
Design
In this phase, the software design is prepared from the requirement
specifications which were studied in the first phase. System Design helps in specifying hardware and system requirements and also helps in defining overall system architecture.
In this phase, the QA Engineers comes up with the Test strategy, where they mention what to test, how to test.
Implementation / Coding: 
Upon receiving system design documents, the work is divided in modules/units and actual coding is started. Since in this phase, the code is produced so it is the main focus for the developer. This is the longest phase of SDLC.  In this phase, the QA Engineers comes up with the Test Environment setup and test Case Documentation.
Testing: 
After the code is developed it is tested against the requirements to make sure that the product is actually solving the needs addressed and gathered during the requirements phase. During this phase all types of  like unit testing, integration testing, Smoke Testing, functional testing, Sanity Testing, system testing, acceptance testing are done as well as non-functional testing is also done.

Deployment: 
After successful testing the product is delivered/deployed to the customer for their use.
As soon as the product is given to the customers they will first do the beta testing/User Acceptance Testing.  If any changes are required or if any bugs are caught, then they will report it to the engineering team. Once those changes are made or the bugs are fixed then the final deployment will happen.

Question 19: What is Software Testing Life Cycle (STLC): (IMP)
It is the testing process which is executed in a systematic and planned manner. In the STLC process, different activities are carried out to improve the quality of the product.
Following steps are involved in Software Testing Life Cycle (STLC).

  1. Requirement Analysis
  2. Test Planning (Test Strategy, Test Plan)
  3. Test Case Development (Writing Test Cases)
  4. Environment Setup
  5. Test Execution
  6. Defect Reporting
Questions 20: What is difference between bug release and bug leakage?
Bug release is when software or an application is handed over to the customer/client knowing that the defect is present in a release. Bug leakage is something, when the bug is discovered by the end users or customer, and not detected by the testing team while testing the software.
 
 

Post a Comment

0 Comments