Pages

Men

rh

7/15/2012

Interview Point of Questions on Testing Part-3


What is meant by Alpha Testing?
Alpha testing is testing of product or system at developer’s site by the customer.

What kind of Document you need for going for a Functional testing?
Functional specification is the ultimate document, which expresses all the functionality's of the application and other documents like user manual and BRS are also need for functional testing. Gap analysis document will add value to understand expected and existing system.

What is meant by Beta Testing?
User Acceptance testing which is done with the objective of achieving all users needs. In this testing usually users or testers will involve in performing.

E.g.: a Product after completion given to customers for trail as Beta version and feedback from users and important suggestions which will add quality will be done before release.

At what stage the unit testing has to be done?
After completing coding of individual functionality's unit testing can be done.
Say for E.g.: if an application have 5 functionality's to work together, if they have been developed individually then unit testing can be carried out before their integration is suppose to be done.

Who can perform the Unit Testing?
Both developers and testers can perform this unit level testing

What is the testing that a tester performs at the end of Unit Testing?

Integration testing will be performed after unit testing to ensure that unit tested modules get integrated correctly.

What are the things, you prefer & Prepare before starting Testing?
Study the application, Understanding the applications expected functionality's, Preparing Test plan, Ambiguity/Clarification Document and test design Documents.

What is Integration Testing?
Integration testing exercises several units that have been combined to form a module, subsystem, or system. Integration testing focuses on the interfaces between units, to make sure the units work together. The nature of this phase is certainly 'white box', as we must have certain knowledge of the units to recognize if we have been successful in fusing them together in the module.

What is Incremental Integration Testing?
Incremental Integration Testing is an approach of testing where we will integrate the modules top to bottom or on the incrementing scale of intensity.

What is meant by System Testing?
The system test phase begins once modules are integrated enough to perform tests in a whole system environment. System testing can occur in parallel with integration test, especially with the top-down method.

What is meant by SIT?
System Integration Testing done after the completion of Unit level testing. An application which is integrated together after assuring their individual functionality's. 

When do you go for Integration Testing?
When all Separate unit in Unit Level testing is assured to do good their performance, Then Application is recommended for integration after these unit getting integrated, application can be performed integration testing.

Can the System testing be done at any stage?
No, The system as a whole can be tested only if all modules are integrated and all modules work correctly
System testing should be done before UAT (User Acceptance testing) and Before Unit Testing.

What are stubs & drivers?
Driver programs provide emerging low-level modules with simulated inputs and the necessary resources to function. Drivers are important for bottom-up testing, where you have a complete low-level module, but nothing to test it with. Stubs simulate sub-programs or modules while testing higher-level routines.

What is the Concept of Up-Down & Down-Up in Testing in integration testing?
There is two approach in testing an application if the functionality sequence was mapped and tracked from top to bottom then it is called top down method ,If that was done for integration testing then it is top down model testing in Integration and vice versa for Bottom up model

What is the final Stage of Integration Testing?
All the individual units integrated together to Perform a task as a system or Part of the system as expected to do so.

Where in the SDLC, the Testing Starts?
It depends upon the Software Model which we follow. If we use Waterfall model then testing will comes in to picture only after coding is done. If we follow V model then testing can be started at the design phase itself. UAT test cases can be written from URS/BRS and System test cases can be written from SRS.

What is the Outcome of Integration Testing?
At the completion of integration testing all the unit level functionalities or sub modules are integrated together and finally it should work as a system as whole as expected.

What is meant by GUI Testing?
Testing the front-end user interfaces to applications, which use GUI support systems and standard such as MS Windows.

What is meant by Back-End Testing?
Database Testing is also called as back end testing checking whether database elements have been accessed by front end whenever required as desired.

What are the features, you take care in Prototype testing?
Prototype testing is carrying out testing in same method reputedly to understand the system behavior; here full coverage of functionality should be taken care With the same process followed as for Prototype testing.

What is Mutation testing & when can it be done?
Mutation testing is a powerful fault-based testing technique for unit level testing. Since it is a fault-based testing technique, it is aimed at testing and uncovering some specific kinds of faults, namely simple syntactic changes to a program. 
Mutation testing is based on two assumptions:
The competent programmer hypothesis and the coupling effect. The competent programmer hypothesis assumes that competent programmers tend to write nearly "correct" programs. The coupling effect stated that a set of test data that can uncover all simple faults in a program is also capable of detecting more complex faults. Mutation testing injects faults into code to determine optimal test inputs

What is Compatibility Testing?
Testing to ensure compatibility of an application with different browsers, Operating Systems, and hardware platforms. Compatibility testing can be performed manually or can be driven by an automated functional or regression test suite.

What is Usability Testing?
Usability testing is a core skill because it is the principal means of finding out whether a system (see our definition below) meets its intended purpose. All other skills that we deploy or cultivate aim to make usability (and, ultimately, use) successful.

It is a Process of Testing the effectiveness, efficiency, and satisfaction with which specified users could achieve specified goals in the Application. Synonymous with "ease of use".

What is the Importance of testing?
Software Testing is more Oriented to detecting the defects or often equated to finding bugs. Testing is mainly done to make things go wrong to determine if things happen when they shouldn't or things don't happen when they should. Testing only demonstrates that the product performs each function intended & to show the product is free from defect.

What is meant by regression Testing?
Regression testing is an expensive but necessary activity performed on modified software to provide confidence that changes are correct and do not adversely affects other system components. Four things can happen when a developer attempts to fix a bug. Three of these things are bad, and one is good:





When we prefer Regression & what are the stages where we go for Regression Testing?
We Prefer regression testing to provide confidence that changes are correct & has not affected the flow or Functionality of an application which got Modified or bugs got fixed in it.


Stages where we go for Regression Testing are: -

  • Minimization approaches seek to satisfy structural coverage criteria by identifying a minimal set of tests that must be retested, for identifying whether the application works fine.
  • Coverage approaches are also based on coverage criteria, but do not require minimization of the test set. Instead, they seek to select all tests that exercise changed or affected program components.
  • Safe attempt instead to select every test that will cause the modified program to produce different output than original program.



 What is performance testing?
An important phase of the system test, often-called load, volume or performance test, and stress tests try to determine the failure point of a system under extreme pressure. Stress tests are most useful when systems are being scaled up to larger environments or being implemented for the first time. Web sites, like any other large-scale system that requires  multiple accesses and processing, contain vulnerable nodes that should be tested before deployment. Unfortunately, most stress testing can only simulate loads on various points
of the system and cannot truly stress the entire network, as the users would experience it. Fortunately, once stress and load factors have been successfully overcome, it is only necessary to stress test again if major changes take place. 

A drawback of performance testing is that can easily confirm that the system can handle heavy loads, but cannot so easily determine if the system is producing the correct information. In other words, processing incorrect transactions at high speed can cause much more damage and liability than simply stopping or slowing the processing of correct transactions.

Performance testing can be applied to understand your application or WWW site's scalability, or to benchmark the performance in an environment of third party products such as servers and middleware for potential purchase. This sort of testing is particularly useful to identify performance bottlenecks in high use applications. Performance testing generally involves an automated test suite as this allows easy simulation of a variety of normal, peak, and exceptional load conditions.

The following three types highly influence Performance of an application. Load testing, Volume testing, Stress Testing Stress testing is the combination of both load and volume.

What is the Performance testing; those can be done Manually & Automatically?
This sort of testing is particularly useful to identify performance bottlenecks in high use 1applications. Performance testing generally involves an automated test suite as this allows easy simulation of a variety of normal, peak, and exceptional load conditions. 
Manually: - Load, Stress, & Volume are the types of testing which are been done Manually.
Automated: - Load, Stress, & Volume are the types of testing which are been done automatically, by using the Automated Skills.

What is Volume, Stress & Load Testing?
V olume testing: - Testing the Application under varying loads; keeping the Number of Users constantly & finding the Response time & the system With Standing Capability or varying the Load till saturation Point is reached
Load Testing : -Testing the Application under Constant load; keeping varying the Number of Users & there by finding the Response time & the system With Standing Capability or varying the Users till saturation Point is reached
Stress Testing : - Testing the Application under varying loads; keeping varying the Number of Users simultaneously & there by finding the Response time & the system With Standing Capability or varying the Load & Users till saturation Point is reached



What is a Bug?
Bug: - “Is an error found BEFORE the application goes into production?”

What is a Defect?
Defect: - “Is an error found AFTER the application goes into production?”

What is the defect Life Cycle?

  • Test Team (Here the Defect status will be Open)
  • Test Lead Authorize the bugs found (Here the Defect Status will be Open)
  • Development Team reviewing the Defect (Here the Defect Status will be Open)
  • The defect can be Authorized or Unauthorized by the development Team (Here the Status of the Defect will be Open (For Authorized Defects) & Reject (For Unauthorized Defects)
  • Development Team fixing the Defect (Here the authorized Bugs will get fixed or differed; it is done again by the Development team. Here the Status after the Development team fixing the bugs will be (Fixed) & Status will be Differed for the bugs which got Differed)
  • The Fixed bugs will be again Re-tested by the Test Team (Here based on the Closure of the Bug, the status will be made as closed or if the Defect still remains, it will be Re-raised again & even the new bugs with status Open will be sent to the Development team)
  • The above-mentioned cycle flows on continuously, until all the bugs gets fixed in the application.


What is the Priority in fixing the Bugs?
Priority: - The value will be given to the bugs, by both Testers & Developers (But Mostly the Development team will take care of this). It mainly deals with, what importance should be given to each bug by the Developer. (i.e.) like the Critical bugs should be solved first & then the Major bugs can be taken care.

Explain the Severity you rate for the bugs found?

  • Emergency
  • High (Very High & high)
  • Medium
  • Low (Very Low & Low)

Testers will rate severity
It is based on the Defect we find in the application. Severity can be rated as Critical or major or Minor. It is mostly done based on the nature of the defect found in the Application.
Eg: - When user is not able to proceed or system gets crashes & so that tester is not able to proceed further testing (These Bugs will be rated as Critical)
E.g.: - When user tries to add an record & then tries to view the same record added & if the details getting displayed to the fields are not the same which the user provided as the value to the fields (These Type of Bugs will be rated as Major Bugs)
E.g.: - Mostly the FLV Bugs & some functional bugs (Related the value display etc.) will be rated as Minor.

Difference between UAT & IST?
UAT & IST

UAT: -
1. Done Using BRD
2. Done with the Live Data
3. Testing is done in User Style
4. Testing in done in the Client Place
5. Testing is done by the Real Users or some Third Party Testers
IST: -
1. Done Using FS
2. Done with the Simulated Data
3. Testing is done in a Controlled Way.
4. Testing in done in Offsite
5. Testing is done in the Testers Company

What is meant by UAT?
Traditionally, this is where the users ‘get their first crack’ at the software. Unfortunately, by this time, it's usually too late. If the users have not seen prototypes, been involved with the design, and understood the evolution of the system, they are inevitably going to be unhappy with the result. If you can perform every test as user acceptance tests, you have a much better chance of a successful project

User Acceptance testing is done to achieve the following:-

  • User specified requirements have been satisfied
  • Functionality is doing as per supporting documents
  • Expected performance have been achieved
  • End user is comfortable to use the application.


What all are the requirements needed for UAT?

  • · Business Requirement Document is the Documents required for performing the UAT Testing by the testers.
  • · Application should be Stable (Means, all the Modules should be tested at least once after Integrating the Modules)

What are the docs required for Performance Testing?
Bench Mark is the Basic Document required for Performance Testing. Where the documents contains in detail about the Response Time, Transaction Time, Data Transfer Time, Virtual Memory in which the Application should work.

What is risk analysis?
Risk Analysis is a series step that helps the Software or Testing Team to understand & manage Uncertainty. It is a process of evaluating risks, threats, controls, & vulnerabilities. 
Threat: - Which is capable of exploiting vulnerability in the security of a computer system or application.
Vulnerability: -Is a design, implementation, or operations flaw that may be exploited by a threat?
Control: -Control is anything that tends to cause the reduction of risk.

How to do risk management?
Identifying the Risk Involved in the project & finding Mitigation for the Risk Found will do risk Management. Risk Mitigation will be a solution for the Risk Identified.

What are test closure documents?

  • Test Conditions
  • Test Case
  • Test Plan
  • Test Strategy
  • Traceability Matrix
  • Defect Reports
  • Test Closure Document
  • Test Data

(The Above Mentioned Deliverables are based on the deliverables accepted by the
Testing Team & mentioned in the Test Strategy)

What is Traceability matrix?
Traceability Matrix: -
Through out the testing life cycle of the project Traceability matrix has been maintained to ensure the Verification & Validation of the testing is complete.

What ways can be followed for defect management?

  • Reporting the Bugs through the Defect Report (Excel Template)
  • Any in-house tool inbuilt in the company may also be used.
  • Commonly available tools like TEST DIRECTOR can also be employed



2 comments :