Test Automation and Advanced Selenium-Classbook-Lesson01
Test Automation and Advanced Selenium-Classbook-Lesson01
Pag
e
01-1
Test Automation & Advanced Selenium Introduction to Automation
Lesson Objectives
What is Automation?
What is Test Automation?
Why to Automate?
Manual Testing Vs Automation Testing
Manual To Automated Testing – The Process
Advantage of Automation Testing
What Should Be Automated?
Automation Testing – Best Practices
Common Misconceptions About Automated Testing
Example of Test Automation
Pag
e
01-2
Test Automation & Advanced Selenium Introduction to Automation
Pag
e
01-3
Test Automation & Advanced Selenium Introduction to Automation
Testing is a very important phase in the development process. It ensures that all the
bugs are ironed out and that the product or software, is functioning as expected or as
close to the target performance as possible.
In the organization, every software development project team tests the software or
application, yet one can not ensure that the software is 100% bug free. Test
engineers strive to catch these bugs before the product is released but they always
creep in and they often reappear, even with the best manual testing processes.
Automating testing efforts is the best way to increase the effectiveness, efficiency
and coverage of your software testing.
Manual testing requires physical time and effort to ensure the software code does
everything it’s supposed to do. In addition, manual testers have to make a record of
their findings. This involves checking error log files, trace files etc. Automation testing
differs from manual testing where a human being is responsible for single handedly
testing the functionality of the software in the way a user would. Automated testing is
done through an automation tool, less time is needed in exploratory tests and more
time is needed in maintaining test scripts while increasing overall test coverage.
Pag
e
01-4
Test Automation & Advanced Selenium Introduction to Automation
Why to Automate?
Pag
e
01-5
Test Automation & Advanced Selenium Introduction to Automation
Pag
e
01-7
Test Automation & Advanced Selenium Introduction to Automation
Testing Improves Accuracy: Even the most conscientious tester will make
mistakes during monotonous manual testing. Automated tests perform the same
steps precisely every time they are executed and never forget to record detailed
results. Testers freed from repetitive manual tests have more time to create new
automated software tests and deal with complex features.
Pag
e
01-8
Test Automation & Advanced Selenium Introduction to Automation
Good Candidates
• Repetitive tests that run for multiple builds (Sanity check, regression tests).
• Tests that tend to cause human error.
• Tests that require multiple data sets (Data driven tests).
• Frequently used functionality that introduces high risk conditions.
• Tests that are complex & time consuming to perform manually.
• Tests that run on several different hardware or software platforms and
configurations.
• Tests requiring a great deal of precision.
Bad Candidates
• Tests that are newly designed and not executed manually at least
once.
• Tests for which the requirements are changing frequently.
• Tests which are executed on ad-hoc basis.
• Usability Testing.
• Ad-hoc/Random Testing – based on intuition and knowledge of
application.
Page 01-10
Test Automation & Advanced Selenium Introduction to Automation
Test early and regularly: Start testing as soon as possible. Early testing allows for
early identification of bugs, which is both easier and more cost-effective to fix in the
long run. Further, in order to have best results, testing needs to be repeated
regularly.
Select the right automation testing tool: Selecting an automated testing tool is
essential for test automation. There are a lot of automated testing tools on the
market, and it is important to choose the automated testing tool that best suits your
overall requirements.
Page 01-11
Test Automation & Advanced Selenium Introduction to Automation
Page 01-13
Test Automation & Advanced Selenium Introduction to Automation
To execute the test case, we need to login to the application. We also need to check
if the user is already logged in or not. And the other we need to check is if the logged
in person is having access to “Add Users” or Not. If the above Two Conditions are
passed then we should execute the rest Else we should return the test as failed.
Page 01-14
Test Automation & Advanced Selenium Introduction to Automation
Summary
Page 01-15
Test Automation & Advanced Selenium Introduction to Automation
Review Question
Question 1:
Why would you want to automate a test? Is it to:
• Increase test coverage?
• Improve quality?
• Save time for exploratory testing?
• Find more bugs?
• Replace manual testers?
Question 2: True/False
• Automation Testing uses automation tools to run tests that
repeat predefined actions.
Page 01-16