Tags: , | Categories: QA Interview Questions
Posted by trainer on 1/26/2013 4:53 PM |

1) What is the difference between QA and QC?

QC ~ Quality Control

    - Corrective action

    - Reactive

    - Focus on defect free product

    - Inspection review testing

QA~ Quality Assurance

    - Preventive

    - Proactive

    - Focus on everything to prevent defects

    - Auditing , reporting, data analysis


2) How testing can be categorized into its types?

Testing can be categorized into following

    - Functional

The Software is subjected to inputs and outputs and are verified for conformance for requirement no design knowledge is needed

    - Structural

Coverage of code, statements, branches, path and conditions proper and efficient program execution internal working can be seen

    - Performance

Load, volume response time these are nonfunctional requirements not described but expected

Stress Testing

Load Testing

    - Regression

To verify changes due to bug fixes have not affected the software

    - Security/penetration

Software must be protected from an unauthorized access


3) What is nonexecution based testing?

Walk     - through and Inspections are an example of nonexecution based testing where the artifact is statically being analyzed for any nonconformance to requirements


4) What is testing? What does it show?

Testing: to be confirm of the fact that the software is performing what it is supposed to perform aligning requirements and making the software bug free

What testing finds:

    - Errors

    - Conformance to requirements

    - Nonconformance to requirements

    - Indication of quality



5) What is Test Strategy?

Testing Strategy as the name indicates is how the testing process needs to be processed .Laying out a roadmap for the whole testing by identifying the most potential tests to be carried out.

A strategy for software testing integrates test cases into a well     - planned series of steps that results in successful testing efforts.



6) What does the Test Strategy include?

A Test Strategy comprises of following

    - How to start with testing

    - What tests must be picked

    - Suitable tests for the domain specific

    - What tests to include

    - Any risk factors associated

    - How to mitigate the risk



7) What are various levels of testing?

Testing can be performed at these levels

I. Unit Testing

II. Integration Testing

III. System Testing

IV. Validation

These are not disjoint levels they overlap each other at others at different places as per requirements

Between each level of unit, integration, system and validation testing devising a right approach if the testing and object oriented system or normal conventional software



8) At what level which testing is performed?

    - Code level: Unit Testing

    - Design level: Integration Testing

    - Requirement level: Validation (after these requirements have been incorporated into project/product

    - System level: system testing



9) What is Unit testing?

Unit Testing: Is a code level testing following aspects of the code are tested.

    - Interface

    - Local data structure

    - Boundary condition

    - Independent paths

    - Error handling paths



10) Usually who is responsible for unit testing?

Usually developers are responsible for the unit testing.


11) What is Integration Testing?

In Integration testing various components are joined and then tested in a way that they behave as one single component.

Example: There are two modules Module A and Module B

When integrated with the output from Module A will become Input for Module B and hence Module B has to respond and provide output as per that input.

Integration testing helps to address issues like multiple path issues and choosing to integrate the modules in such a way that all the process becomes bug free and there is no error in the process.


12) What are different approaches to carry out Integration Testing?

These are different approaches for Integration testing

    - Top down

    - Bottom up

    - Sandwich

    - Big Bang


13) Explain Top Down Testing?

Top module is tested with stubs and then stubs replace one at a time depth first

As new modules as integrated some subset of tasks are rerun


14) Explain Bottom up Testing?

Drivers are replaced one at a time depth first testing

Workable modules are grouped into building and integrated


15) Explain Sandwich Testing?

Top modules are tested with stubs .Workable modules are grouped into building and integrated


16) Explain Big bang Testing?

Big bang: every module is tested in isolation then into together and tested


17) Define Stubs?

A stub uses subordinate module interfaces and passes that information to the driver or main module

Min data manipulation can be done

Prints input parameters return the results of the module to be tested and prints them out


18) Define test Drivers?

A main program that accepts test input data, pass this to the module to be tested and print the result


19) What is object oriented testing?

OO Testing:

    - Unit broadens into encapsulation

    - Integration becomes focused on classes

    - Validation black box method


20) What is System Testing?

System testing: focus on system integration to test the system as a whole, incorporating other elements like network environment, Operating system environment, databases combining these all and testing the whole system as one single system.

What tests can be performed under the umbrella of system testing?

    - Security testing

    - Recovery testing

    - Performance


21) What is performance testing?

Performance testing: run time performance is tested

The following issues are the intend behind carrying performance tests

    - How well the software meets the user expectations. For example to check

    - How long it takes to load a page

    - What happens when 20,000 simultaneous users access the server how it responds

    - Does it takes less time to load in one situation and let you wait for unknown time in another situation

    - These things relate to the performance aspects of the project /product.


22) What tests comes under performance testing?

    - Load

    - Stress

    - Volume


23) Explain load testing?

The real world load is tested at a variety of load combinations and levels


24) Explain stress testing?

Stress testing: execute the system that utilized the system resources in abnormal quantity, frequency, or volume to determine how much capacity the web app can handle.

The load is increased to the breaking point     - stretching to the maximum limit


25) Have you heard about spike or bounce testing?

In spike or bounce testing the

The load is being extended to the maximum and then at a sudden decreased jut to check that how the system handles such situation and how system bounces back.


26) Difference between load and stress testing?

Load testing: It is a type of performance testing where load with various condition and combinations are tested.

Stress testing: Is an extension of load testing with the difference that load had been stretched to the breaking point. Checking out the behavior at the maximum possible limit.


27) Explain security testing?

Security testing: To protect from improper penetrations


28) Explain recovery testing?

Recovery testing: fail software in a variety of ways and focuses on verification that recovery is proper


29) What is validation testing?

Validation testing: focuses on software requirements

Validation: process of evaluating the software at the end of software development to ensure compliance with the requirements

Am I building the right product?

The software system as a whole is tested to ensure that it satisfy customers functional quality requirements

Alpha testing

Beta testing


30) What do alpha and beta both supports?

Alpha beta testing: focuses on customer usage


31) What is alpha testing?

Alpha Testing: Is a pre     - release testing that is carried out at the development site by the QA Team with the intent on making sure that the project is safe and stable to be deployed.


32) What is beta testing?

Beta Testing: The software is distributed to some potential users of the software .The software is being utilized as it has to perform in the real time environment.

These people can report for bug also if they come any.

Example: Taking the example of MSN messenger it has some beta versions which were marketed out in advance of the actual release to check with the user's response


33) What is verification?

Verification: demonstration of consistency, completeness and correctness of the software artifacts at each stage of and between

Each stage of the software life cycle

Types of verifications: manual inspection, testing, formal methods

Am I building the product right?


34) Difference between Verification and validation?

Verification:

    - Am I building the product right

    - Types of verifications: manual inspection, testing, formal methods

    - Verification: demonstration of consistency, completeness and correctness of the software artifacts at each stage of and between

    - Each stage of the software life cycle

Validation:

    - Am I building the right product

    - Validation testing: focuses on software requirements

    - Validation: process of evaluating the software at the end of software development to ensure compliance with the requirements


35) Testing can be considered as a "verification activity "or a "validation activity"?

Testing: examination of the behavior of a program by executing the program on sample data sets: testing is a verification technique


36) What is smoke testing?

Smoke testing is used for testing daily builds


37) What are nonfunctional tests?

These are usually not mentioned by the clients but these features are generally expected to be there

    - Usability

    - Security

    - Reliability Testing

    - Performance testing


38) What is testing tactics?

Testing tactics are the approaches that are taken while testing. How the software will be tested .Will it be considered as a black box hiding all the internal details , or white box scanning it inside out going through all the possible paths , checking Cyclomatic complexity etc. or will it be best of both partially black box with some working knowledge of the code also.


39) What are various testing tactics?

    - Black Box

    - White Box

    - Gray Box


40) Explain black box Testing?

Black box testing is an approach in which input is checked against the corresponding output as per the requirements.


41) Give some tests that can be carried out under "Black Box Testing"?

These are two tests that can be conducted under

    - Boundary

    - Partitioning methods 


42) Explain boundary value analysis?

Boundary value analysis helps to devise those test cases that examine boundary values.


43) Explain partitioning method?

Equivalence partitioning helps to devise test cases that divide the input domain into classes that leads to test cases. These test cases are the best ones as these represent the whole class and one test case can provide the result and test coverage that in another case many test cases may provide.


44) What is white box testing?

White box testing is concerned with the testing the internal logic of the software. This type of testing involves the usage of the control structure at the component level.


45) How white box testing is carried out?

    - Basic Path Testing

Is a technique that derives logical complexity measures of a design?

Test Cases are designed to check the execution paths.

    - Control Structure Testing

The execution control is checked. Various conditions are tested, data flow is tested, loop based execution is tested.

 


46) What is Gray Box testing?

Gray Box Testing is a technique that has combined best of both worlds." Black box testing" and "White Box Testing".

In such testing both aspects are kept in mind that as checking with the black box functional approach the White box structural testing is also done.


47) What are methods/tools to test gray box?

Selenium is a tool which can help to test both functional and structural approaches


48) What are coverage metrics?

    - Statement coverage

    - Branch coverage

    - Path coverage


49) What is SDLC?

SDLC stands for "Software development life cycle". It depicts how the software will be initiated and what conditions/or requirement coverage when achieved will be an indicator that it has been completed.



50) Name different phases of SDLC?

The various phases of SDLC are as follows

    - Requirement

    - Analysis

    - Design

    - Code

    - Test

    - Deployment


51) Explain Requirement Phase?

Requirement Phase is where all the requirements are gathered and formulated into an SRS Software requirement Specification


52) Explain Analysis Phase?

In Analysis phase analysis is carried out and all the aspects are well understood


53) Explain Design Phase?

All the knowledge from requirement and the analysis phase is now converted to formulate a design specification


54) Explain Code Phase?

In code phase the design is now converted to code


55) What is build?

Is an updated version of the code with new functionality added, bug fixes and enhancements .Usually builds are made on a daily basis or weekly basis depending upon the functionality or changes to be incorporated.


56) What is build deployment?

In a live environment installing and making the then known version live on customer's premises is known as build deployment


57) What is Code Generation or Program?

The main activity in SDLC where all the requirements, analysis and design come into life and become code that provides the intended functionality.


58) Can you explain some good design principles that can be applied to the code to make it efficient and robust?

Following are some good design principles

    - Interface segregation principle

    - Dependency inversion principle


59) What is a Module?

Software is divided into separate addressable component named as modules


60) Explain Testing Phase?

In testing phase the code is being tested and matched to the intended requirements to be confirmed of customer acceptance


61) What is meant by Walk through?

A walk through is an informal meeting that is carried out just to have an idea about the quality of the artifact .Usually little or no preparation is needed.


62) What is an inspection?

An inspection is performed to get assured of the fact that SQA artifacts are up to mark.

Where an inspection team is being formulated to carry an inspection activity of the artifacts.


63) What are its phases?

Phases:

    - Planning     - >team planning, artifact to be inspected, entry criteria, need for overview , Place for inspection

    - Overview     - > schedule meeting, author of the artifact provides a brief description of software what task is per, how it is performed* depends on moderator could be skipped

    - Preparation     - > data must be provided to inspection team few days ahead to examine properly each inspector examines the data and if defects then those are recorded in the log form

    - Inspection meeting     - > inspection team come together to discuss the discrepancies

    - Defect type is noted and counted and logged

    - Rework     - >if defects needed to be reworked then it is done in this phase

    - Follow up     - > after rework a follow up is needed


64) What is the difference between a walk     - through and Inspection?

The main difference is that walk through is an informal process which require little or no preparation. Whereas the inspection is a formal process which can be carried out in a planned manner.


65) What is Change Control (or Change Request)?

Due to highly volatile nature of the real time business needs software undergoes many changes .Later after the SRS have been base lined and signed upon by all stakeholders as agreed if then some change is needed then that has to be in a formal manner as request. This request is then been analyzed by Change control board for its lingering effect that could adhere other modules of functionality, the cost of this change in terms of new work or rework is evaluated and then is approved if these changes can be incorporated within the assigned schedule, any schedule slippage is also mentioned all the conditions are agreed upon by the stakeholders


66) What does STLC?

STLC stands for: Software test life cycle ". It encompasses all the activities right from the beginning till the final user acceptance test.


67) What are the SQA artifacts that are as a result of each SDLC phase?

QA during SDLC

    - Scope identification and proposal     - >SQA review

    - Project planning     - >QA plan

    - Requirement management and collection     - >SRS

    - Analysis     - > functional specification

    - Design     - >design specs

    - Code     - > source code

    - Testing     - > QA

    - Deployment     - >User Manual , Installation guides, Troubleshooting documents


68) What is Software Testing Life Cycle (STLC)?

STLC

    - Requirements analysis     - > understand the requirements

    - Design analysis     - >tester work with the development team to determine the different aspects of software design that can be tested and their parameters

    - Test planning     - >test strategy, test planning and test bed creation

    - Test development     - > test procedure, test scenarios, test cases, and test scripts

    - Test execution     - > execution

    - Test reporting     - > bug found are reported

    - Retesting the defects     - > check for bug fixes


69) What is the difference between STLC and SDLC?

SDLC stands software development life cycle

STLC stands for the Software Test Life cycle


70) What is BLC?

BLC stands for "Bug life cycle"


71) Explain different phases of bug life cycle?

A bug life cycle originated with the appearance of the bug. The bug then needs to be reproduced to check if really that's an issue or just mishandling.

The bug has to be assigned to a developer who is the owner of the module or code functionality along with comprehensive information. After the bug has been fixed it needed to be verified.


72) What is the difference between severity and priority?

Severity

    - Is concerned with standards

    - How it will be effecting quality to what level of requirement it does effects

Priority

    - Is concerned with timings or scheduling

    - Something that needs a level of immediate or urgent attention


73) What is defect severity?

    - Critical: blockage. This app is not able to proceed

    - Major: the application is not working as desired there are variations in the functionality

    - Minor: there is no failure reported due the defect but must be rectified

    - Insignificant: the error will not affect the functionality cosmetic changes


74) What is the difference between defects, error?

These are often used interchangeably

    - Error: mistakes made by programmers in the code

    - Defects/fault: synonyms bug : Condition that causes the system to fail


75) What do you do once you find a defect?

Once the defect has been found one needs to make sure that the bug is reproducible.

With all the necessary details the bug needs to be filed and assigned to the appropriate developer who was responsible for developing that module.


76) What will you do if the developer does not accept the bug?

There must be some reasons and with all those reasons mentioned in the log the issue must be documented in the project data as if in the future then tracking could be done as was it really was a bug that sometimes appeared and at another time don't .Or was functioning as designed.


77) What are all the basic elements in a defect report?

Following elements are considered important for sending a comprehensive defect report.

    - Serial number

    - Project name

    - Feature tested

    - Version number

    - Bug reproducible info

    - Bug reproducible steps

    - Any other details (screen recording or snapshot )

    - Reported by

    - Status "Open closed

    - Assigned to


78) What if the software is so buggy it can't be tested at all?

In such situation the bugs must be prioritized. Dependencies must be outlined and the testing process must be halted temporarily .As soon as main blocker bugs starts getting fixed things becomes simpler. At this point the testing process can be resumed.


79) What is the role of documentation in QA?

QA is a well     - planned and well estimated task. Documentation helps in managing, keeping track and providing estimations


80) Have you written Test Plan?

Answer: Yes, I have written Test Plan


81) What is a Test Plan?

Answer: Planning and allocating the resources for the Testing cycle.


82) What does it include?

Test Plan:

Test Plan is a document that outlines all the tasks that must be performed to assure conformance to requirement i.e. to check that software meets all the requirements.

    - Purpose     - > What app is tested describe

    - Features to be Tested     - > all TC that will be executed

    - Features not to be tested     - >mention exclusions

    - Environment     - >HW NW DB SW OS etc.

    - Schedule     - >Timeline and milestones with respect to dates

    - Approach     - >Strategies

    - Suspension criteria     - > condition that could halt testing

    - Resumption criteria     - > condition that could restart the suspended test

    - Acceptance criteria     - >objective is to check if it is ready for release

    - Roles and responsibilities     - >who will be doing what

    - Explanation: TP represents an overall approach to the test.


83) It's a summary of the testing process and its activities that must be performed to assure quality. How do you create a test plan/design?

First of all the requirements needs to be understood by getting along with SRS .This will help to identify the domain , extend to which testing must be carried out.

Then resources must be identified and allocated that is who will test what.


84) How to write a User Acceptance Test plan?

The user acceptance Test Plan can be written by choosing those candidate test cases that represent the main functionality that is needed by the software; all the functional and nonfunctional aspects should be taken care of. As this is the testing phase that represents the actual user need.


85) Have you written a Test Case?

Yes I have written Test Case


86) What is a Test Case?

Describes the specific interaction that can be tested to test the single behavior of the software

A Test case is a specific set of activity that focuses on a single functionality at a time .Taking some inputs and checking for the expected output or behavior that input drives.


87) What does it include?

Test Case has

    - Unique number

    - Requirement match or Traceability information

    - Precondition

    - Post condition

    - Expected results

A TC contains actual data and the expected results that must be obtained against these.


88) How to write Integration test cases?

For creating test cases for the Integration testing the main emphasis is on creating test cases that caters inputs and their corresponding outputs so as to check the proper integration as one single entity.


89) How to write Regression test cases? What are the criteria?

For regression test cases candidate test cases are chosen from the existing test suites. These Test cases can be chosen according to

    - Those test cases that represent main functionality, best of breed that provides maximum coverage.

    - Those Test Cases that lead to blocker bugs

    - Test Cases for those modules which represent a high level of coupling and cohesion


90) Is there a format for a test case?

Yes there is a standard format for test cases.


91) Do you follow any methodology for numbering test cases?

Yes as these test cases needed to be tracked for further QA activities these needs to be numbered efficiently in the Test Plan. Numbering represents the hierarchal arrangement for these test cases.


92) What is SQL?

Structured Query Language. AS the name indicates that it is query language it is used to fetch information, insert, update, and delete information from a database.


93) Where do you write SQL query?

We write SQL queries using some these tools: SQL Client, Todd, Squirrel and Rapid SQL.


94) What is the most common syntax you have used while writing SQL query?

SELECT * FROM TABLE


95) What is the difference between Primary Key and Unique Key?

Both primary key and unique key enforces uniqueness of the column on which they are defined.

    - Primary Key :

Creates a clustered index on the column

Does not allows Null

    - Unique Key :

Creates a non     - clustered index by default

Allow one Null only


96) Define candidate key, alternate key, and composite key?

Candidate key : A candidate key can identify each single row of a table uniquely.

A candidate key becomes the primary key

Alternate key: If there is more than one candidate key one of them primary key and

Rest become alternate key

Composite key:

A key formed by combining at least two or more columns is called composite key


97) What is Data?

Raw facts are called data which when queried becomes information and provides some insight into decision making


98) What is a Database?

The database consists of collection of persistent data that is needed by some application.


99) Have you used automation tools?

As I have used automation tools. For test management I have used Test director, bug cycle management I have used clear quest and performance testing I have used load runner.


100) What is Test Harness?

In an automation framework the collection of software, test data and test bed setup is called test harness. Two of its components are script repository and the test execution engine.


101) How do you know when to stop testing?

    - When all requirements have been covered

    - When no new bug is being found and the application is pretty much stable

    - When the scope has been covered

    - When schedule is almost reached

    - When the budget allocated has been utilized


102) What is a 'Show Stopper'?

Is a blocker bug that halts all the functionality and the testing cannot be further proceeded .It causes crashes or major system failure


103) Explain the PDCA cycle?

It is a Quality Control activity .PDCA cycle stands for Plan Do Check Act; commonly used for quality control.

    - Plan: Identify purpose to deliver the output.

    - Do: Implementation of the plan.

    - Check: Confirm the result

    - Action: Take appropriate action to achieve expected outcomes.


104) What is Monkey testing?

Monkey testing is type testing which is carried out without any specific planned approach.


105) What is the recovery/error testing?

To test how well software recovers from any crash or hardware issues that could suddenly or randomly


106) What is compatibility testing?

To test how well software can perform in similar or other environment. This could be a browser based testing, Operating system based testing or any other hardware specific issue.


107) What is comparison testing?

Where reliability is critical to an independent version of the same system are developed

And each tested against the same data for the same results


108) What is parallel/audit testing?

An old and new version of the same system is tested with the same set of inputs at a same time testing two versions of the same system in parallel.


109) What is Back to back testing?

Testing where two or more than two variants or versions of the program are tested with the same set of inputs and then corresponding outputs of both are compared and the results and errors are compared.