Comparison of Actual Outcomes To Predicted Outcomes, The Setting Up of Test Preconditions, and Other Test Control and Test Reporting Functions. "
Comparison of Actual Outcomes To Predicted Outcomes, The Setting Up of Test Preconditions, and Other Test Control and Test Reporting Functions. "
Automation Testing is the best way to increase the effectiveness, efficiency and
coverage of your software testing. Automation Testing tool helps to play back pre-
recorded and predefined actions, will help in comparison of the result to the expected
result and would report the success or failure to the test engineers.
Ones automated test are prepared they can easily be repeated. Automation Testing
has been considered most important for software companies but it is often thought to
be too expensive or difficult for smaller companies to implement.
1
It helps in cost reduction, as the number of resources for regression test are
reduced.
Human resources are also reduced in automation testing.
Quality Control involves the series of inspection, review and tests used throughout the
software process to ensure each work product meets the requirement. Whereas,
Quality Assurance is a set of activities that are designed to ensure the development
and/or maintenance process is adequate to ensure a system will meet its objectives
Example of Quality Control is Testing.
Quality Assurance(QA) is planned and systematic set of activities necessary to provide
adequate confidence that product and services will conform to specified requirement
and meet user needs while Quality Control(QC) is the process by which product
quality is compared with applicable standards and the action taken when
nonconformance is detected.
QA is evaluating the process, identifying the defects and suggesting improvements for
the same. It is oriented towards "Prevention" Eg: Audits, Reviews. On the other hand,
Quality Control is evaluating the product, identifying the defects and suggesting
improvements for the same. It is oriented towards "Detection" Eg: Testing.
QA is the process that is use to create & enforce standard & guideline to improve the
quality of software process & prevent bug from the application whereas, QC is a
process that is use to find bug from the product , as early as possible & make sure they
get fixed.
Quality Control (QC) is a system of routine technical activities, to measure and control
the quality of the inventory as it is being developed. The QC system is designed to:
(i) Provide routine and consistent checks to ensure data integrity, correctness, and
completeness;
(ii)Identify and address errors and omissions
(iii) Document and archive inventory material and record all QC activities.
Quality Assurance (QA) activities include a planned system of review procedures
conducted by personnel not directly involved in the inventory
compilation/development process. Reviews, preferably by independent third parties,
should be performed upon a finalized inventory following the implementation of QC
procedures. Reviews verify that data quality objectives were met, ensure that the
inventory represents the best possible estimates of emissions and sinks given the
current state of scientific knowledge and data available, and support the effectiveness
of the QC program.
2
It should be noted that, before implementing QA/QC activities, it is necessary to
determine which techniques should be used, and where and when they will be applied.
This is most common question that every Software Tester has to face regularly
throughout the testing career. The most common answer to this is to reduce the costly
errors. The cost of error in software can vary from nothing at all to large amount of
money or even a loss of life.
There are hundreds of stories about failures of computer systems that have been
attributed to errors in software. There are many reasons why systems fail but the issue
that stands out the most is the lack of adequate testing.
These well documented stories emphasis the necessity for correct and thorough
testing, as the risks involved were not just measured in financial terms but in human
lives! There are complete disasters that have occurred in the development of new
systems that have caused huge financial losses, which could have been avoided
through effective testing.
Examples: Pepsi - $42 Billion Error In May 1992, Pepsi ran a promotion in the
Philippines. It told customers they could win a million pesos (approx. $40,000) if they
bought a bottle of Pepsi and found number 349 stamped on the underside of the bottle
cap. Unfortunately, due to a software error, 800,000 bottle caps were produced with
number 349 instead of one, which was an equivalent of $42 billion in prize money. It
cost the company dearly as some people pursued their claims through the courts and
Pepsi paid out millions of dollars in compensation.
Examples: Disney's Lion King, 1994-1995, In the fall of 1994, the Disney company
released its first multimedia CD-ROM game for children, The Lion King Animated
Storybook. Although many other companies had been marketing children's programs
for years, this was disney's first venture into the market and it was height advertised
and promoted. Sales were very huge. It was a game to buy for children in holiday
season. On December 26th, customer support's phone began to ring and ring and ring.
The Phone support technicians were swamped with calls from angry and frustrated
parents who were not able to run the software on their system for their children. Thus,
it turned out that Disney failed to properly test the software on the many different PC
models available in the market. The software worked on few system, likely the ones
that the Disney programmers used to create the game - but not on the most common
systems that the general public had.
3
(4) Selenium – Overview
4
Sea Monkey
Support Operating System:
Windows -- Linux
Solaris -- OSX
Supported Languages :
C# (Dot Net) -Java -Perl -Python -PHP -HTML
Quality Center helps you organize and manage all phases of the application testing
process, including specifying testing requirements, planning tests, executing tests, and
tracking defects. HP Quality Center (QC), formerly called as HP Test Director, is a
web-based test management tool . It is based on client server technology and has five
main modules like requirement coverage, Test Case Management, Test Execution
Reporting, Defect Management and Test Automation for management of testing
processes. There can be additional modules as well, depending on the various add-ins
installed, e.g. BPT (Business Process Testing). The software product is marketed by
the HP Software & Solutions Division.
Mercury Quality Centre can be divided into two parts. One for tool administrator and
another for tool user. These two parts are called Site Administrator Bin and Quality
Centre Bin. These parts are discussed in more detail in the next section.
Quality Center: This is how user interact with tool. QC interface gives
functionality of creating test plans, defining requirements, creating test cases,
creating test labs, associating requirements with defects in essence, everything
that as a tester or test manager you need to do in your day to day activity apart
from execution.
There are four distinct things which can be managed in Mercury Quality Centre -
5
Requirements
Test Plan
Test Lab
Defects
These four items can be termed as the 4 pillars of the Quality Process for any
organization.
Tests are repeated quite often during the development cycle as to ensure the quality of
the software. So, whenever the source code is modified tests should be repeated,
where in it has to be tested on all supporting operating system and hardware. Doing
this manually would be costly and time consuming, Therefore, automation testing can
be done over and over again at no additional cost and would also save time as
compared to manual testing. Secondly, automation testing would improve the
accuracy.
Below are some main reasons, why automation testing is crucical in the companies.
Firstly automated software testing helps to save time as well money. Every time
source code is modified software tests should be repeated. For each release of the
software it may be tested on all supported operating systems and hardware
configurations. Manually repeating these tests is costly and time consuming. Once
created, automated tests can be run over and over again at no additional cost and they
are much faster than manual tests. Secondly, Automated Software Testing Improves
Accuracy as compared to monotonous manual testing. Thirdly, automated software
testing can increase the depth and scope of the test to help improve software quality.
Lastly, Shared automated tests can be used by developers to catch problems quickly
before sending to QA. Tests can run automatically whenever source code changes are
checked in and notify the team or the developer if they fail. Features like these save
developers time and increase their confidence.
Automation test scripts will be used as a way of storing domain/project/task
Knowledge gained by the Test Engineers. Say for example, if a Tester works in
project for one year, he might have spent more time for learning the domain, purpose
of the project, modules in the project, flow of all functionalities. He will be familiar
with known issues and challenges. If this Tester leaves from the project, the
knowledge gained by him also will leave. It is very difficult for the newly joining
Tester to understand everything from the Test Case document. If automation test
scripts are already available then the new Tester can just start the testing by running
the automation scripts, without gaining much knowledge about the project. He can
understand the flow/data by seeing the execution of the automation test scripts. But
6
anyway, he should gain project/domain knowledge to enhance/update the automation
scripts further. So we can say that test automation is a way of storing knowledge.
------------------------------