Testing tools interview questions and answers for freshers pdf
But the testing tool is not the complete answer for automation. One of the huge mistakes done in testing automation is automating the wrong things during development. Many testers learn the hard way that everything cannot be automated.
The best components to automate are repetitive tasks. So some companies first start with manual testing and then see which tests are the most repetitive ones and only those are then automated. As a rule of thumb do not try to automate: Unstable software: If the software is still under development and undergoing many changes automation testing will not be that effective. Once in a blue moon test scripts: Do not automate test scripts which will be run once in a while. Code and document review: Do not try to automate code and document reviews; they will just cause trouble.
The following figure shows what should not be automated. The test driver is a section of code that calls a software component under test. It is useful in testing that follows the bottom-up approach. The test stub is a dummy program that integrates with an application to complete its functionality. It is relevant for testing that uses the top-down approach. It is favorable as it does not require the development team to complete coding for starting QA.
Instead, both coding and testing go hand in hand. However, it may require continuous customer interaction. Data flow testing emphasizes for designing test cases that cover control flow paths around variable definitions and their uses in the modules. It expects test cases to have the following attributes:.
End-to-end testing is a testing strategy to execute tests that cover every possible flow of an application from its start to finish. The objective of performing end-to-end tests is to discover software dependencies and to assert that the correct input is getting passed between various software modules and sub-systems. If the required specifications are not available for a product, then a test plan can be created based on the assumptions made about the product.
But we should get all assumptions well-documented in the test plan. It is suggested to perform a regression testing and run tests for all the other modules as well. Finally, the QA should also carry out a system testing. If the standard documents like System Requirement Specification or Feature Description Document are not available, then QAs may have to rely on the following references, if available. Another reliable way is to have discussions with the developer and the business analyst.
It helps in solving the doubts, and it opens a channel for bringing clarity on the requirements. Also, the emails exchanged could be useful as a testing reference. Smoke testing is yet another option that would help verify the main functionality of the application. It would reveal some very basic bugs in the application. If none of these work, then we can just test the application from our previous experiences.
It tests the behavior of the software under test. Based on the requirement of the client, a document called a software specification or requirement specification is used as a guide to test the application.
Based on quality, it is very critical to test these parameters. This type of testing is called non-functional testing. Software testing life cycle STLC proposes the test execution in a planned and systematic manner.
In the STLC model, many activities occur to improve the quality of the product. Fault is a condition that makes the software fail to execute while performing the considered function. A slip in coding is indicated as an error. The error spotted by a manual tester becomes a defect.
The defect which the development team admits is known as a bug. If a built code misses on the requirements, then it is a functional failure. It describes the application point of view. Priority: It specifies which bug should get fixed first. Defect detection percentage DDP is a type of testing metric. It indicates the effectiveness of a testing process by measuring the ratio of defects discovered before the release and reported after the release by customers.
Defect removal efficiency DRE is one of the testing metrics. It is an indicator of the efficiency of the development team to fix issues before the release. It gets measured as the ratio of defects fixed to total the number of issues discovered. Defect age is the time elapsed between the day the tester discovered a defect and the day the developer got it fixed.
While estimating the age of a defect, consider the following points:. Automation testing is a process of executing tests automatically. It reduces human intervention to a great extent. Testing tools help in speeding up the testing tasks. These tools allow you to create test scripts to verify the application automatically and also to generate the test reports. Quality Assurance QA refers to the planned and systematic way of monitoring the quality of the process which is followed to produce a quality product.
QA tracks the test reports and modifies the process to meet the expectation. Quality Control QC is relevant to the quality of the product. QC not only finds the defects but suggests improvements too.
Thus, a process that is set by QA is implemented by QC. QC is the responsibility of the testing team. The aim of performing testing is to find bugs and make sure that they get fixed. Thus, it helps to maintain the quality of the product to be delivered to the customer. Choosing automated testing over manual testing depends on the following factors:. Bug release: A bug release is when a particular version of the software is released with a set of known bug s.
Performance is identified with achieving response time, throughput, and resource-utilization levels that meet the performance objectives for a project or a product.
Monkey testing is a technique in software testing where the user tests the application by providing random inputs, checking the behavior of the application or trying to crash the application. Exploratory testing is an approach to software testing, wherein testers learn simultaneously about the test design and test execution. In other words, it is a hands-on approach where testers are involved more in the test execution part than in planning.
System testing is a black-box testing technique, used on a complete integrated system, where it will test the system compliance as per the requirement. Test reports will help us find the current status of a project and its quality. This can help stakeholders and customers take necessary actions.