0% found this document useful (0 votes)
11 views

Automation and Testing Tools

The document discusses the need for automating testing activities, highlighting benefits such as reduced testing effort, decreased tester involvement, and minimized human errors. It also outlines static and dynamic testing tools, the costs associated with testing tools, and guidelines for effective automated testing. Key considerations include the necessity of training, configuration management, and the potential need for multiple tools to meet specific requirements.

Uploaded by

Seetha Lakshmi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views

Automation and Testing Tools

The document discusses the need for automating testing activities, highlighting benefits such as reduced testing effort, decreased tester involvement, and minimized human errors. It also outlines static and dynamic testing tools, the costs associated with testing tools, and guidelines for effective automated testing. Key considerations include the necessity of training, configuration management, and the potential need for multiple tools to meet specific requirements.

Uploaded by

Seetha Lakshmi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 16

Automation and

Testing Tools
PRESENTED BY:
JAYASRI. A
FELIX RAJ. A
VAISHNAVI. E
BALCHANDAR. R
CONTENTS
Need for automating the testing activities
Static and dynamic testing tools
Cost Incurred in testing tools
Guidelines for automated testing
Need for automating the testing
activities
• Automated Testing is a technique where the Tester writes
scripts on their own and uses suitable Software or
Automation Tool to test the software.
• It is an Automation Process of a Manual Process.
• It allows for executing repetitive tasks without the
intervention of a Manual Tester.
Need for automating the testing activities

Reduction of testing effort:


In verification and validation strategies, numerous
test case design methods have been studied. Test cases for
a complete software may be hundreds of thousands or more
in number.
Executing all of them manually takes a lot of testing
effort and time. Thus, execution of test suits through
software tools greatly reduces the amount of time required.
Need for automating the testing activities

Reduces the testers’ involvement in executing tests


Sometimes executing the test cases takes a long time. Automating
this process of executing the test suit will relieve the testers to do some
other work, thereby increasing the parallelism in testing efforts.
Facilitates regression testing
As we know, regression testing is the most time consuming
process. If we automate the process of regression testing, then testing
effort as well as the time taken will reduce as compared to manual
testing.
Need for automating the testing activities

• Avoids human mistakes


Manually executing the test cases may incorporate errors in
the process or sometimes, we may be biased towards limited test
cases while checking the software. Testing tools will not cause
these problems which are introduced due to manual testing.
• Internal testing
Testing may require testing for memory leakage or checking
the coverage of testing. Automation tools can help in these tasks
quickly and accurately.
Static and dynamic testing tools

• Static testing tools:


For static testing, there are static program analysers which
scan the source program and detect possible faults and anomalies.
These static tools parse the program text, recognize the various
sentences, and detect the following:
 Statements are well-formed.
 Inferences about the control fl ow of the program.
 „Compute the set of all possible values for program data.
Static testing tools

• Static tools perform the following types of static analysis


• Control flow analysis: This analysis detects loops with multiple
exits and entry points and unreachable code.
• Data use analysis: It detects all types of data faults.
• Interface analysis: It detects all interface faults. It also
detects functions which are never declared and never called or
function results that are never used.
• Path analysis: It identifies all possible paths through the
program and unravels the program’s control.
Dynamic testing tools
• Dynamic testing activities:
• systems are difficult to test because several operations are being
performed concurrently. In such cases, it is difficult to anticipate
conditions and generate representative test cases.
• List the number of times a component is called or line of code is
executed. This information about the statement or path coverage
of their test cases is used by testers.
• Report on whether a decision point has branched in all directions,
thereby providing information about branch coverage.
Cost Incurred in testing tools

• Automated script development:


Automated test tools do not create test scripts. Therefore, a significant
time is needed to program the tests. Scripts are themselves programming
languages. Thus, automating test execution requires programming exercises.
• Training is required:
• It is not necessary that the tester will be aware of all the tools and
can use them directly. He may require training regarding the tool,
otherwise it ends up on the shelf or implemented inefficiently.
• Therefore, it becomes necessary that in a new project, cost of training on
the tools should also be included in the project budget and schedule.
Cost Incurred in testing tools
• Configuration management:
• Configuration management is necessary to track large number of
files and test related artifacts.
• Multiple tools are required:
• As discussed earlier, it may be possible that your requirement is
not satisfied with just one tool for automation. In such a case, you
have to go for many tools which incur a lot of cost.
Cost Incurred in testing tools
• Testing tools can be intrusive:
• It may be necessary that for automation some tools require that a
special code is inserted in the system to work correctly and to be
integrated with the testing tools. These tools are known as
intrusive tools which require addition of a piece of code in the
existing software system. Intrusive tools pose the risk that defects
introduced by the code inserted specifically to facilitate testing
could interfere with the normal functioning of the system.
GUIDELINES FOR AUTOMATED
TESTING
• Automation is not a magical answer to the testing
problem. Testing tools can never replace the analytical
skills required to conduct testing and manual testing. It
incurs some cost as seen above and it may not provide the
desired solution if you are not careful.
• Therefore, it is necessary that you carefully plan the
automation before adopting it. Decide which tool and how
many tools are required, how much resources are
required including the cost of the tool and the time spent
on training.
GUIDELINES FOR AUTOMATED
TESTING
• Consider building a tool instead of buying one, if
possible:
• It may not be possible every time. But if the requirement is
small and sufficient resources allow, then go for building the
tool instead of buying, after weighing the pros and cons.
• Whether to buy or build a tool requires management
commitment, including budget and resource approvals.
GUIDELINES FOR AUTOMATED
TESTING
• Test the tool on an application prototype :
• While purchasing the tool, it is important to verify that it
works properly with the system being developed.
However, it is not possible as the system being developed
is often not available.
• Therefore, it is suggested that if possible, the
development team can build a system prototype for
evaluating the testing tool.

You might also like