21⟩ Define Validation in Quality Engineering?
Validation is a process of evaluating product during or at the end of the development process to determine whether product meets specified requirements.
“Certified Quality Engineer related Frequently Asked Questions in various Quality Engineer based job Interviews by interviewer. The set of questions here ensures that you offer a perfect answer posed to you. So get preparation for your new job hunting”
Validation is a process of evaluating product during or at the end of the development process to determine whether product meets specified requirements.
Priority is to concern with application from the business point of view.
Severity is to concern with functionality of application. It deals with the impact of the bug on the application.
Build is a number given to install-able software that is given to testing team for testing by the development team. Build number assigned are incremental and sequential.
Release is a number given to install-able software that is handed over to customer by the developer or tester. The information of build, release and version are displayed in software help page. Using this build and release customer can let the customer team know which release version build that are using.
1) Application should be stable enough to be tested.
2) Testing always under time constraint
3) Understanding requirements, Domain knowledge and business user perspective understanding
4) Which tests to execute first?
5) Testing the Complete Application
6) Regression testing
7) Lack of skilled testers.
8) Changing requirements
) Lack of resources, tools and training
Reasons for choosing automation testing over manual testing are following:
1) Frequency of use of test case
2) Time Comparison (automated script run much faster than manual execution.)
3) Re-usability of Automation Script
4) Adaptability of test case for automation.
5) Exploitation of automation tool.
★ When the requirements are very clearly know, documented and not subject to change then we can follow the waterfall model.
★ Most of the companies follow the V mode for the development because this model includes both verification and validation activities and testing is involved in earlier phase.
★ Iterative model can be used to build application where requirement changes after a period of times or application features or added on with smaller release. When the client is ready for the delivery of the product in parts or phases.
When customer or end user discovered a bug which can be detected by the testing team. Or when a bug is detected which can be detected in previous build then this is called as Bug Leakage.
Bug release is when a build is handed to testing team with knowing that defect is present in the release. The priority and severity of bug is low. It is done when customer want the application on the time. Customer can tolerate the bug in the released then the delay in getting the application and the cost involved in removing that bug. These bugs are mentioned in the Release Notes handed to client for the future improvement chances.
When changes in the code of the software are made to fix the previous bug. Then testing needs to be perform to ensure that it will not generate a new bug in the application and it works as specified and that it has not negatively impacted any functionality that it offered previously.
Regression Testing is important because of following reason:
★ That the application works even after the alteration in the code were made.
★ The original functionality continues to work as specified even after doing changes in the software application.
★ The alteration to the software application has not introduced any new bugs.
Beta testing is performed by end user. So that they can make sure that the product is bug free or working as per the requirement. In-house developers and software QA team perform alpha testing. The public, a few select prospective customers or the general public performs beta testing.
Alpha testing is performed by the IN-House developers. After alpha testing the software is handed over to software QA team, for additional testing in an environment that is similar to the client environment.
Specification-driven testing means to test the functionality of software according to the user requirements. In this, tester inputs multiple data and monitors the outputs from, the test object. In this testing tester evaluate the showstopper bugs which break the major functionality of the application. This type of testing requires test plan and test.
Exploratory testing means testing an application without a test plan and test script. In exploring testing test explore the application on the basis on his knowledge. The tester has no knowledge about the application previously. He explores the application like an end user and try to use it. While using the application his main motive is to find the bugs which are in the application.
★ When there is no time and budget.
★ When maximum number of test cases are executed.
★ All the Requirements are mapped that is RTM is filled completely.
★ When Test coverage is more than 80%.
★ When bug rate falls below certain level.
★ Quality assurance, Verification and Validation,
★ To find the bugs before the product is released to customer.
★ To improve the quality of the product
★ The Purpose of Testing is to evaluate that the product is according to requirements
★ The Stub is called from the software component to be tested. It is used in top down approach.
★ The driver calls a component to be tested. It is used in bottom up approach.
★ Both test stub and test driver are dummy software components.
★ Suppose we want to test the interface between modules A and B and we have developed only module A. So we cannot test module A but if a dummy module is prepare, using that we can test module A.
★ Now module B cannot send or receive data from module A directly so, in these cases we have to transfer data from one module to another module by some external features. This external feature used is called Driver.