Q1. What is Requirement Traceability Matrix?
The
Requirements Traceability Matrix (RTM) is a tool to make sure that
project requirement remain same throughout the whole development
process. RTM is used in the development process because of following
reasons:
• To
determine whether the developed project is meet the requirements of
the user.
• To determine all the requirements given by the user
• To make sure the application requirement can be fulfilled in the verification process.
• To determine all the requirements given by the user
• To make sure the application requirement can be fulfilled in the verification process.
Q2. What is difference between Pilot and Beta testing?
The
differences between these two are listed below:
• A
beta test when the product is about to release to the end user
whereas pilot testing take place in the earlier phase of the
development cycle.
• In beta testing application is given to a few user to make sure that application meet the user requirement and does not contain any showstopper whereas in case of pilot testing team member give their feedback to improve the quality of the application.
• In beta testing application is given to a few user to make sure that application meet the user requirement and does not contain any showstopper whereas in case of pilot testing team member give their feedback to improve the quality of the application.
Q3. Describe how to perform Risk analysis during software testing?
Risk
analysis is the process of identifying risk in the application and
prioritizing them to test. Following are some of the risks:
1.
New Hardware.
2. New Technology.
3. New Automation Tool.
4. Sequence of code delivery.
5. Availability of application test resources.
2. New Technology.
3. New Automation Tool.
4. Sequence of code delivery.
5. Availability of application test resources.
We
prioritize them into three categories these are:
• High
magnitude: Impact of the bug on the other functionality of the
application.
• Medium: it can be tolerable in the application but not desirable.
• Low: it can be tolerable. This type of risk has no impact on the company business.
• Medium: it can be tolerable in the application but not desirable.
• Low: it can be tolerable. This type of risk has no impact on the company business.
Q4. What is Silk Test?
Silk
Test is a tool developed for performing the regression and
functionality testing of the application. Silk Test a tool is used
when we are testing the applications which are based on Window, Java,
web or traditional client/server. Silk Test help in preparing the
test plan and management of those test plans, to provide the direct
accessing of the database and validation of the field.
Q5. What is difference between Master Test Plan and Test Plan.
The
differences between Master Plan and Test Plan are given below:
• Master
Test Plan contains all the testing and risk involved area of the
application where as Test case document contains test cases.
• Master Test plan contain all the details of each and every individual tests to be run during the overall development of application whereas test plan describe the scope, approach, resources and schedule of performing test.
• Master Test plan contain the description of every tests that is going to be performed on the application where as test plan only contain the description of few test cases. during the testing cycle like Unit test, System test, beta test etc
• Master Test Plan is created for all large projects but when it is created for the small project then we called it as test plan.
• Master Test plan contain all the details of each and every individual tests to be run during the overall development of application whereas test plan describe the scope, approach, resources and schedule of performing test.
• Master Test plan contain the description of every tests that is going to be performed on the application where as test plan only contain the description of few test cases. during the testing cycle like Unit test, System test, beta test etc
• Master Test Plan is created for all large projects but when it is created for the small project then we called it as test plan.
Q6. How to deal with not reproducible bug?
Ans.
A bug cannot be reproduced for following reasons:
1.
Low memory.
2. Addressing to non available memory location.
3. Things happening in a particular sequence.
2. Addressing to non available memory location.
3. Things happening in a particular sequence.
Tester
can do following things to deal with not reproducible bug:
• Includes
steps that are close to the error statement.
• Evaluate the test environment.
• Examine and evaluate test execution results.
• Resources & Time Constraints must be kept in point.
• Evaluate the test environment.
• Examine and evaluate test execution results.
• Resources & Time Constraints must be kept in point.
Q7.What is the difference between coupling and cohesion?
The
difference between coupling and cohesion is discussed below:
• Cohesion
is the degree which is measure dependency of the software component
that combines related functionality into a single unit whereas
coupling means that binding the related functionality into different
unit.
• Cohesion deals with the functionality that related different process within the single module where as coupling deals with how much one module is dependent on the other modules within the application.
• It is good to increase the cohesion between the software whereas increasing coupling is avoided.
• Cohesion deals with the functionality that related different process within the single module where as coupling deals with how much one module is dependent on the other modules within the application.
• It is good to increase the cohesion between the software whereas increasing coupling is avoided.
Q8. What is the role of QA in a project development?
The
role of Quality Assurance is discussed below:
• QA
team is responsible for monitoring the process to be carried out for
development.
• Responsibilities of QA team are planning testing execution process.
• QA Lead creates the time tables and agrees on a Quality Assurance plan for the product.
• QA team communicated QA process to the team members.
• QA team ensures traceability of test cases to requirements.
• Responsibilities of QA team are planning testing execution process.
• QA Lead creates the time tables and agrees on a Quality Assurance plan for the product.
• QA team communicated QA process to the team members.
• QA team ensures traceability of test cases to requirements.
Q9. When do you choose automated testing over manual testing?
This
choice between automated testing over manual testing can be based
upon following factors:
1.
Frequency of use of test case
2. Time Comparison (automated script run much faster than manual execution.)
3. Reusability of Automation Script
4. Adaptability of test case for automation.
5. Exploitation of automation tool
2. Time Comparison (automated script run much faster than manual execution.)
3. Reusability of Automation Script
4. Adaptability of test case for automation.
5. Exploitation of automation tool
Q10. What are the key challenges of software testing?
Following
are some challenges of software testing:
1.
Application should be stable enough to be tested.
2. Testing always under time constraint
3. Understanding the requirements.
4. Domain knowledge and business user perspective understanding.
5. Which tests to execute first?
6. Testing the Complete Application.
7. Regression testing.
8. Lack of skilled testers.
9. Changing requirements.
10. Lack of resources, tools and training
2. Testing always under time constraint
3. Understanding the requirements.
4. Domain knowledge and business user perspective understanding.
5. Which tests to execute first?
6. Testing the Complete Application.
7. Regression testing.
8. Lack of skilled testers.
9. Changing requirements.
10. Lack of resources, tools and training
Q11. What is difference between QA, QC and Software Testing?
Quality
Assurance (QA): QA refers to the planned and systematic way of
monitoring the quality of process which is followed to produce a
quality product. QA tracks the outcomes and adjusts the process to
meet the expectation.
Quality
Control (QC): Concern with the quality of the product. QC finds the
defects and suggests improvements. The process set by QA is
implemented by QC. The QC is the responsibility of the tester.
Software
Testing: is the process of ensuring that product which is developed
by the developer meets the user requirement. The motive to perform
testing is to find the bugs and make sure that they get fixed.
Q12. What is concurrent user hits in load testing?
When
the multiple users, without any time difference, hits on a same event
of the application under the load test is called a concurrent user
hit. The concurrency point is added so that multiple Virtual User can
work on a single event of the application. By adding concurrency
point, the virtual users will wait for the other Virtual users which
are running the scripts, if they reach early. When all the users
reached to the concurrency point, only then they start hitting the
requests.
Q13. What is difference between Front End Testing and Back End testing?
The
differences between front and back end testing are:
• Front
End Testing is performed on the Graphical User Interface
(GUI).whereas Back End Testing involves databases testing.
• Front end consist of web site look where user can interact whereas in case of back end it is the database which is required to store the data.
• When ender user enters data in GUI of the front end application, then this entered data is stored in the database. To save this data into the database we write SQL queries.
• Front end consist of web site look where user can interact whereas in case of back end it is the database which is required to store the data.
• When ender user enters data in GUI of the front end application, then this entered data is stored in the database. To save this data into the database we write SQL queries.
Q14. What is Automated Testing?
The
process of performing testing automatically which reduces the human
intervention this is automation testing. The automation testing is
carried out with the help of the some automation tool like QTP,
Selenium, WinRunner etc. In automation testing we use a tool that
runs the test script to test the application; this test script can be
generated manually or automatically. When testing is completed then
tools automatically generate the test report and report.
Q15. What is Testware?
The
testware is:
• The
subset of software which helps in performing the testing of
application.
• Testware are required to plan, design, and execute tests. It contains documents, scripts, inputs, expected results, set-up and additional software or utilities used in testing.
• Testware is term given to combination of all utilities and application software that required for testing a software package.
• Testware are required to plan, design, and execute tests. It contains documents, scripts, inputs, expected results, set-up and additional software or utilities used in testing.
• Testware is term given to combination of all utilities and application software that required for testing a software package.
Testware
is special because it has:
1.
Different purpose
2. Different metrics for quality and
3. Different users
2. Different metrics for quality and
3. Different users
Q16.What is Exhaustive Testing?
Exhaustive
Testing, as the name suggests is very exhaustive. Exhaustive testing
means to test every component in the application with every possible
number of inputs. According to Principles of testing Exhaustive
Testing is Impossible because exhaustive testing requires more time
and effort to test the application for all possible number of inputs.
This may lead to high cost and delay in the release of the
application.
Q17. What is Gray Box Testing?
Grey
box testing is the hybrid of black box and white box testing. In gray
box testing, test engineer has the knowledge of coding section of the
component and designs test cases or test data based on system
knowledge. In this tester has knowledge of code, but this is less
than the knowledge of white box testing. Based on this knowledge the
test cases are designed and the software application under test
treats as a black box & tester test the application from outside.
Q18. What is Integration Testing?
Integration
testing is black box testing. Integration testing focuses on the
interfaces between units, to ensure that units work together to
complete a specify task. The purpose of integration testing is to
confirm that different components of the application interact with
each other. Test cases are developed with the purpose of exercising
the interfaces between the components. Integration testing is
considered complete, when actual results and expected results are
same. Integration testing is done after unit testing. There are
mainly three approaches to do integration testing:
• Top-down
Approach tests the components by integrating from top to bottom.
• Bottom-up approach It takes place from the bottom of the control flow to the higher level components
• Big bang approach In this are different module are joined together to form a complete system and then testing is performed on it.
• Bottom-up approach It takes place from the bottom of the control flow to the higher level components
• Big bang approach In this are different module are joined together to form a complete system and then testing is performed on it.
Q19. What is Scalability Testing?
Scalability
testing is testing performed in order to enhanced and improve the
functional and performance capabilities of the application. So that,
application can meets requirements of the end users. The scalability
measurements is done by doing the evaluating the application
performance in load and stress conditions. Now depending upon this
evaluation we improve and enhanced the capabilities of the
application.
Q20. What is Software Requirements Specification?
• A
software requirements specification is a document which acts as a
contract between the customer and the supplier.
• This SRS contain all the requirement of the end user regarding that application. SRS can be used as a communication medium between the customer and the supplier.
• The developer and tester prepare and examine the application based on the requirements written in the SRS document.
• The SRS documented is prepared by the Business Analyst by taking all the requirements for the customer.
• This SRS contain all the requirement of the end user regarding that application. SRS can be used as a communication medium between the customer and the supplier.
• The developer and tester prepare and examine the application based on the requirements written in the SRS document.
• The SRS documented is prepared by the Business Analyst by taking all the requirements for the customer.
Q21. What is Storage Testing?
In
Storage Testing we test those functionalities of the application
which is responsible for storing the data into database. The data
entered by the end user in GUI or front end, is the same data which
is stored in the database. The storage testing determines that the
data taken from the front end of the application is stored in correct
place and in correct manner in the database.
Q22. What is Stress Testing?
Stress
testing tests the software with a motive to check that the
application do not crashes if we increase the stress on the
application by increasing the large number of user working on the
application. We can also apply the stress on the application firing
the lots of process which cannot be handled by the application. We
perform the stress testing on the application evaluate the
application capabilities at or beyond the limits of its specified
requirements to determine. Generally, this is a type of performance
testing performed in a very high level of load and stress condition.
Q23. What is Test Harness?
A
test harness is a collection of software and test data required to
test the application by running it in different testing condition
like stress, load, data- driven, and monitoring its behavior and
outputs. Test Harness contains two main parts:
• Test
execution engine
• Test script repository
• Test script repository
Automation
testing is the use of a tool to control the execution of tests and
compare the actual results with the expected results. It also
involves the setting up of test pre-conditions.
Q24. Can you define test driver and test stub?
• The
Stub is called from the software component to be tested. It is used
in top down approach.
• The driver calls a component to be tested. It is used in bottom up approach.
• Both test stub and test driver are dummy software components.
• The driver calls a component to be tested. It is used in bottom up approach.
• Both test stub and test driver are dummy software components.
We
need test stub and test driver because of following reason:
• Suppose
we want to test the interface between modules A and B and we have
developed only module A. So we cannot test module A but if a dummy
module is prepare, using that we can test module A.
• Now module B cannot send or receive data from module A directly so, in these cases we have to transfer data from one module to another module by some external features. This external feature used is called Driver.
• Now module B cannot send or receive data from module A directly so, in these cases we have to transfer data from one module to another module by some external features. This external feature used is called Driver.
Q25.What is good design?
Design
refers to functional design or internal design. Good internal design
is indicated by software code whose overall structure is clear,
understandable, easily modifiable, and maintainable; is robust with
sufficient error-handling and status logging capability, and works
correctly when implemented. Good functional design is indicated by an
application whose functionality can be traced back to customer and
end-user requirements.
Q26. What makes a good QA or Test manager?
A
good QA or Test manager should have following characteristics:
• Knowledge
about Software development process
• Improve the teamwork to increase productivity
• Improve cooperation between software, test, and QA engineers
• To improvements the QA processes.
• Communication skills.
• able to conduct meetings and keep them focused
• Improve the teamwork to increase productivity
• Improve cooperation between software, test, and QA engineers
• To improvements the QA processes.
• Communication skills.
• able to conduct meetings and keep them focused
Q27. What is Manual scripted Testing and Manual Support testing?
Manual
Scripted Testing: Testing method in which the test cases are designed
and reviewed by the team before executing it. It is done by manual
testing teams.
Manual-Support Testing: Testing technique that involves testing of all the functions performed by the people while preparing the data and using these data from automated system. it is conducted by testing teams
Manual-Support Testing: Testing technique that involves testing of all the functions performed by the people while preparing the data and using these data from automated system. it is conducted by testing teams
Q28. What is Fuzz testing, backward compatibility testing and assertion testing?
Fuzz
Testing: testing application by entering invalid, unexpected, or
random data to the application this testing is performed to ensure
that application is not crashing when entering incorrect and
unformatted data.
Backward
Compatibility Testing: Testing method which examines performance of
latest software with older versions of the test
environment.
Assertion Testing: Type of testing consisting in verifying if the conditions confirm the product requirements.
Assertion Testing: Type of testing consisting in verifying if the conditions confirm the product requirements.
Q29. How does a client or server environment affect testing?
There
are lots of environmental factors that affect the testing like speed
of data transfer data transfer, hardware, and server etc while
working with client or server technologies, testing will be
extensive. When we have time limit, we do the integration testing. In
most of the cases we prefer the load, stress and performance testing
for examine the capabilities of the application for the client or
server environment.
Q30. What are the categories of defects?
There
are three main categories of defects:
• Wrong:
The requirements are implemented incorrectly in the application.
• Missing: When requirement given by the customer and application is unable to meet those application.
• Extra: A requirement incorporated into the product that was not given by the end customer. This is always a variance from the specification, but may be an attribute desired by the user of the product.
• Missing: When requirement given by the customer and application is unable to meet those application.
• Extra: A requirement incorporated into the product that was not given by the end customer. This is always a variance from the specification, but may be an attribute desired by the user of the product.
No comments:
Post a Comment