Top 31 Test Estimation Interview Questions You Must Prepare 19.Mar.2024

An FTR is a file or data referenced by a transaction. An FTR should be an ILF or EIF. So count each ILF or EIF read during the process. If the EP is maintained as an ILF then count that as an FTR. So by default you will always have one FTR in any EP.

A tree view in Quick Test Pro has statements in keywords or in tree structure. The testing process in the keyword created and viewed in the keyword drive modular format.

Automation framework is a blend of assumptions, concepts, practices which provide support for automated software testing. The framework depends on the project needs, as there are no hard and fast rules to automation framework.

If the application have variety of functionality with little variations in terms of test data, ‘functional framework’ is suitable for software applications. For applications that have variety of functionality and more variations in test data, ‘hybrid test automation framework’ is suitable for those applications.

Rational Robot is an automated testing tool for functional and regression testing for automating Windows, Java, IE and ERP applications which run on Windows platform. The test cases for common objects such as lists, bitmaps, and menus are provided by Rational Robot.

It also provides specialized test cases for objects those are specific for development environment. The tools like Relational Test Manager, Rational Clear Quest and Requisite Pro are integrated in the Rational Unified Processor for Change Management, Requirement Traceability and Defect Tracking. It also supports UI technologies such as VS.NET controls, Web, Java, Oracle Forms, Borland Delphi and Sybase Power Builder applications.

Software applications are a combination of elementary processes. When elementary processes come together they form a software application.

There are two types of elementary processes:

Dynamic elementary Process: The dynamic elementary process moves data from an internal application boundary to an external application boundary or vice-versa. Example: Input data screen where a user inputs data into the application. Data moves from the input screen inside the application.

Static elementary Process: Static elementary process which maintains the data of the application either inside the application boundary or in the external application boundary. For example, in a customer maintenance screen maintaining customer data is a static elementary process.

EIs are dynamic elementary processes in which data is received from the external application boundary. Example: User interaction screens, when data comes from the User Interface to the Internal Application.

This section is the most important section. All the previously discussed sections relate only to applications. But there are other things also to be considered while making software, such as are you going to make it an N-Tier application, what's the performance level the user is expecting, etc. These other factors are called GSCs.

ILFs are logically related data from a user's point of view. They reside in the internal application boundary and are maintained through the elementary process of the application.ILFs can have a maintenance screen but not always.

Software applications are a combination of elementary processes. When elementary processes come together they form a software application.

There are two types of elementary processes:

Dynamic elementary Process: The dynamic elementary process moves data from an internal application boundary to an external application boundary or vice-versa. Example: Input data screen where a user inputs data into the application. Data moves from the input screen inside the application.

Static elementary Process: Static elementary process which maintains the data of the application either inside the application boundary or in the external application boundary. For example, in a customer maintenance screen maintaining customer data is a static elementary process.

A big project is made manageable by first breaking it down into individual components in a hierarchical structure, known as the Work breakdown structure, or the WBS.

The WBS helps to project manager and the team to create the task scheduling, detailed cost estimation of the project. By using the WBS motions, the project manager and team will have a pretty good idea whether or not they’ve captured all the necessary tasks, based on the project requirements, which are going to need to happen to get the job done.

In this technique the complex project is divided into smaller pieces. The modules are divided into smaller sub-modules. Each sub-modules are further divided into functionality. And each functionality can be divided into sub-functionalities. After breakdown the work all functionality should review to check whether each & every functionality is covered in the WBS.

Using this you can easily figure out the what all task needs to completed & they are breakdown into details task so estimation to details task would be more easier than estimating overall Complex project at one shot.

Work Breakdown Structure has four key benefits:

Work Breakdown Structure forces the team to create detailed steps:

In The WBS all steps required to build or deliver the service are divided into detailed task by Project manager, Team and customer. It helps to raise the critical issues early on, narrow down the scope of the project and create a dialogue which will help make clear bring out assumptions, ambiguities, narrow the scope of the project, and raise critical issues early on.

Work Breakdown Structure help to improve the schedule and budget.

WBS enables you to make an effective schedule and good budget plans. As all tasks are already available so it helps in generating a meaningful schedule and makes scheming a reliable budget easier.

Work Breakdown Structure creates accountability

The level of details task breakdown helps to assign particular module task to individual, which makes easier to hold person accountable to complete the task. Also the detailed task in WBS, people cannot allow hiding under the “cover of broadness.”

Work Breakdown Structure creation breeds commitment

The process of developing and completing a WBS breed excitement and commitment. Although the project manager will often develop the high-level WBS, he will seek the participation of his core team to flesh out the extreme detail of the WBS. This participation will spark involvement in the project.

Application boundary considers users perspective. It indicates the margin between the software measured and the end user. It helps to identify what is available to the end user externally from the interface to interact with the internal of the system. This helps to identify the scope of the system.

Test Point Analysis is an approach for formulating all top-down methods. TPA is utilized for arriving at the estimated effort.

TPA only covers the Black-box testing which is an estimate for the test activities. It can also be useful in the case where the test hour allowance has been predetermined.

Risks can clearly be identified by comparing the objective TPA estimate with the help of the number of test hours that is predetermined.

A processor is running in the system of specific application. Initially it needed to identify the processor and using performs; there is a facility to check the memory consumption of that designated processor. When the load test is executing, it is needed to track the memory of a specific processor that is running in the system. The processor memory will be increased when the test is stopped. At this point the memory leak can be concluded.

EIFs reside in the external application boundary. EIFs are used only for reference purposes and are not maintained by internal applications. EIFs are maintained by external applications.

An EQ is a dynamic elementary process in which result data is retrieved from one or more ILF or EIF. In this EP some input requests have to enter the application boundary. Output results exits the application boundary.

There are five methodologies most frequently used:

  • Top down according to budget
  • WBS (Work Breakdown Structure)
  • Guess and gut feeling
  • Early project data
  • TPA (Test Point Analysis)

Build Verification Testing is a group of tests that execute on every newly build of products for verification in which the build is testable prior to the release of build into the hands of the test team. The main stream functionality of the application software is tested using BVT. BVT lets the developers know if any serious problems exist with the build. They save the test team time and frustration by avoiding the test of an unstable build.

Bug: A bug is defined as an error that was found before the application goes into production. A bug gives a subliminal impression which crawled into the developer’s code quite independently of the software developer.

Defect: A defect is defined as an error that was found after the application goes into production. It presents cold harsh reality which the engineer, analyst or designer actually get something wrong.

EOs are dynamic elementary processes in which derived data crosses from the internal application boundary to the external application boundary.

Delphi technique – This is one of the widely used software testing estimation technique.

In the Delphi Method is based on surveys and basically collects the information from participants who are experts. In this estimation technique each task is assigned to each team member & over multiple rounds surveys are conduct unless & until a final estimation of task is not finalized. In each round the thought about task are gathered & feedback is provided. By using this method, you can get quantitative and qualitative results.

In overall techniques this technique gives good confidence in the estimation. This technique can be used with the combination of the other techniques.

Below are the steps in function points:

First Count ILF, EIF, EI, EQ, RET, DET, FTR and use the rating tables. After you have counted all the elements you will get the unadjusted function points.

Put rating values 0 to 5 to all 14 GSC. Adding total of all 14 GSC to come out with total VAF. Formula for VAF = 0.65 + (sum of all GSC factor/100).

Finally, make the calculation of adjusted function point. Formula: Total function point = VAF * Unadjusted function point.

Make estimation how many function points you will do per day. This is also called as "Performance factor".On basis of performance factor, you can calculate Man/Days.

The testing estimates derived from function points are actually the estimates for white box testing. So in the following figure the man days are actually the estimates for white box testing of the project. It does not take into account black box testing estimation.

There are different Software Testing Estimation Techniques which can be used for estimating a task.

  • Delphi Technique
  • Work Breakdown Structure (WBS)
  •  Three Point Estimation
  •  Functional Point Method

Function points are a unit measure for software much like an hour is to measuring time, miles are to measuring distance or Celsius is to measuring temperature. Function Points are an ordinal measure much like other measures such as kilometers, Fahrenheit, hours, so on and so forth.

This approach computes the total function points (FP) value for the project, by totaling the number of external user inputs, inquiries, outputs, and master files, and then applying the following weights: inputs (4), outputs (5), inquiries (4), and master files (10). Each FP contributor can be adjusted within a range of +/-35% for a specific project complexity.

It is also referred as Benchmark testing. Performance testing starts with performance baseline testing, performed by the test engineer for comparing the performance of a new server or an unknown server to a known standard of reference like existing measurements or a software.

Static elementary process which maintains the data of the application either inside the application boundary or in the external application boundary. For example, in a customer maintenance screen maintaining customer data is a static elementary process.

Application response time is tested by load testing within the whole network. Where as inter system testing involves in the similar type of testing which will not include in network related issues.

Load testing is for checking the quantity of inputs which can be acceptable by the application at any point of time. The compatibilities among dependent modules are tested by inter system testing.

The test strategy is a formal description of how a software product will be tested. A test strategy is developed for all levels of testing, as required. The test team analyzes the requirements, writes the test strategy and reviews the plan with the project team. The test plan may include test cases, conditions, the test environment, a list of related tasks, pass/fail criteria and risk assessment.

Inputs for this process:

  • A description of the required hardware and software components, including test tools. This information comes from the test environment, including test tool data.
  • A description of roles and responsibilities of the resources required for the test and schedule constraints. This information comes from man-hours and schedules.
  • Testing methodology. This is based on known standards.
  • Functional and technical requirements of the application. This information comes from requirements, change request, technical and functional design documents.
  • Requirements that the system can not provide, e.g. system limitations.
  • Outputs for this process:
  • An approved and signed off test strategy document, test plan, including test cases.
  • Testing issues requiring resolution. Usually this requires additional negotiation at the project management level.

Function points are measurement of a unit for software which resembles an hour measuring time. The functionality of the software is quantified by function points on the request provided by the customer primarily based on logical design. Function points measures software development and its maintenance consistently among all projects and enterprises.

The testing estimates derived from function points are actually the estimates for white box testing. So in the following figure the man days are actually the estimates for white box testing of the project. It does not take into account black box testing estimation.

Performance Testing is focused on understanding the base state of the application, which includes requests per second, response time. Where as Load Testing is performed the identifying the scalability of the system.

More stress is kept on the system and determines whether the system is performing the same in the less stress condition in performance testing. Where as load testing tests the load which is kept beyond the limit that is specified by the client for testing the point where from the performance of the system is decreasing.