Q51. What is the role of Bug Tracking System?
The Bug Tracking System role is discussed below:
- Testers and developers can know the status of the bug at every stage.
- Changes to the Status will be available to all team members.
- Developers and Testers can easily interact with bugs.
- Repetition of bugs will be avoided.
- Easy to distribute the bug among the developer.
- It will act as a centralized one for defects.
Q52. How do you prioritize testing tasks within a project?
Test Process are execute in step by step. We cannot skip any of the process defined. Following is the Test Process which are in terms of their priority:
1. Preparation of Test Plan.
2. Preparation of Test Cases.
3. Execution of the Test Cases.
4. Defect report and tracking.
5. Test Report Summary.
Q54 Describe Bottom-Up and Top-Down approach in Testing.
Bottom Up Approach:
- The bottom up approach testing approach is carried out with the help of the test driver. The test driver calls a component to be tested.
- The modules in the lower level of call hierarchy are tested independently. Then the next level modules are tested that call previously tested modules. This is done repeatedly until all the modules are included in the testing.
- Bottom up testing stops when the top module in the call hierarchy is tested with all lower call hierarchy modules.
Top Down Approach:
- The top down approach is carried out with the help of the test stub. Test stub are the dummy programs. The Stub is called from the software component to be tested.
- Tests top layer of controlling subsystem first. Then combine modules that are called by the tested modules and test resulted collection of modules.
- Do this until all the modules are combined and tested.
Q55. What methodologies do you used to develop test cases?
For developing the test cases we use following strategies:
- Error Guessing: The tester has to guess what fault might occur and to design the tests to represent them.
- Equivalence Class Partitioning: The input domain data is divided into different equivalence data classes; take few valid values with 2 invalid values. This is used to reduce the total number of test cases to a finite set of testable test cases.
- Boundary value analysis: Boundary value analysis testing technique is used to identify errors at boundaries rather than finding those exist in center of input domain. Boundary value analysis is a next part of Equivalence.
Q56. What are the differences between test strategy and test plan?
The differences between these two are described below:
- Test plan is dynamic where as test strategy is static.
- Test plan is prepared by the Test Lead where as Test Strategy is prepared by the company management.
- Test strategy defines: methods and coverage criteria to be covered test completion criteria, prioritization of the test where as Test plan is a document describing the scope, approach, resources and schedule of intended test activities.
- Test Strategy is a high level description of the test levels to be performed where as Test plan is written record of the test strategy and resource planning.
Q57. What is the need of Test Plan document?
Test Plan tells the tester that what needs to be tested and how testing is going to be performed. Test plan also tells that what resources are needed for the execution of the test cases, timelines and risk associated with the test plan. We can also perform the testing without test plan document, but first we have to select test Approach for the testing and go with testing. Many test plans are being created just for the sake of processes. Many tester use test plan documents when test plan document contains the some useful information.
Q58. Why we do load and performance testing?
- Load Testing: The reason to perform the load testing is to determine response times of application processes and transactions to establish whether they are within acceptable time limit or not, as per user requirement. It also measures the capability of an application to function correctly under load by measuring the systems key performance indicators.
- Performance Testing: Performance Testing is performed to determine response time of the some components of the system perform under a particular workload. It is generally measured in terms of response time for the user activity. It is designed to test the overall performance of the system at high load and stress condition
Q59.What is difference between test effectiveness and test efficiency?
- Test Efficiency is the ratio of number of test cases executed by unit of time (generally per hour).
- It is the amount of code and testing resources required by a program to perform a particular function. Test Effectiveness evaluates the effect of the test environment on the application.
- Test Effectiveness is a measure by the customer response on meeting product requirements where as Test Efficiency is a measure of optimum utilization of resources to create the Software product.
Q60.What is data driven testing?
Data Driven is an automation testing part in which test input or output values, these values are read from data files. It is performed when the values are changing by the time. The different data files may include data pools, csv files, Excel files. The data is then loaded into variables in recorded or manually coded scripts. For data driven testing we use Parameterzing and Regular expression Technique.
Ex. Let we want to sign up to create an account in Gmail for 100 users. For this we pet all the user detail in a single excel sheet or use a single script.
Q61. Can Manual Testing be completely replaced by Automation Testing?
Automated testing cannot replace manual testing because of following reason:
- Automated testing cannot replace the analytical skills required to conduct testing. It can only enhance or supplement manual testing.
- Through manual testing, information can be gathered about the application, and real-time decisions can be made about how to enhance a test that would be too difficult to program into an automated script.
- We need a manual tester to analyze and maintain the automated scripts after they can run.
Q62 Why regression testing is important?
Regression Testing: 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 reasons:
- 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.
Q63. What is Exploratory Testing and Specification-Driven testing?
- 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.
- 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.
Q64. Explain CMM.
Capability Maturity Model (CMM) is divided in five levels:
1. Initial: The organization is characterized by an adhoc set of activities. The processes aren’t defined and success depends on individual effort and heroics.
2. Repeatable: In this level some processes are repeatable, possibly with consistent results.
3. Defined: In this level, we define all processes are documented for both management and engineering activities, and standards.
4. Managed: Detailed measures of each process are defined and product quality data is routinely collected. Both process and products are quantitatively understood and controlled.
5. Optimizing: In this we optimize the application by following improvement process.
Q65. How do you decide you have tested enough?
The principle of testing says that exhaustive testing is impossible. i.e. testing everything is not feasible. We cannot test till all the defects are debugged and removed, it is simply impossible. We have to stop testing and ship the software. We can decide when to stop is testing based on following points:
- 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.
Q66. What the purpose of testing?
Software Testing: is the process of assuring that product which is developed by the manufactured by developer is meeting the user requirement. The motive to perform testing is to find the bugs and make sure that they get fixed. The purposes of testing are following:
- 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.