Following are the most standard test automation tool used in most of the companies:
QTP/UFT: HP Functional Test, earlier known as HP’s Quick Test Professional is the Automation testing tool that supports number of environments such as Java, SAP, Delphi and many more. QTP can be collaborated with Quality centre which is actually a Test Management tool used for client/server applications.
Rational Robot: It is basically an IBM tool that is used to automate functional, regression and configuration tests for e-commerce, client server as well as ERP applications. This tool can be used with Rational Test Manager that helps in Test Management Activities
Selenium: This is an open source web Automation Tool which supports all kinds of web browsers and the most demanding tool in today’s market. Many companies are using this tool for sake of its performance and price. It can be integrated with multiple Test Management tools, Continuous Integration Tools etc.
It is really a tricky task to choose an Automation tool. Following criteria will assist you in choosing the best automation tool for your test automation.
Automation Tool selection is one of major trials to be undertaken prior opting for automation. Initially requirements should be identified, various tools and its capabilities should be explored. You should set the expectation from the tool further going for a Proof of concept.
A framework is actually a set of automation guidelines. It increases code re-usability, portability, reduce script maintenance cost etc. These are not rules and are not mandatory. You can script without following the guidelines. But you may miss some advantages of having a Framework. Guidelines are like:
Four types of framework are generally used in software automation testing:
Observe the following to get maximum ROI of automation
The above guidelines are indeed helpful while making selection of your automation tool.
Following are advantages of automated testing:
You should have three essential things for Automation to be successful. They are Right selection of automation tool, testing process and team. For successful testing, Manual and automation methods go hand-in hand.
Manual testing is very convenient as compared to Automation testing as it is performed by human who sits in front of computer, while executing the test steps very carefully. Automation Testing refers to usage of automation tools that can execute your test suite. Automation software enters test data into the system under test. It is also responsible for comparing the expected and actual results so as to generate detailed test reports.
If you are planning to choose Automation testing for your product then you need to be prepared for the investments on resources and tools. The development of your product will need execution of same test suite until the final product is made. With the use of test automation tool, it becomes quite easy to record this suite while re-playing it as required by your product. There is no need of human intervention, once test suite is automated. This will eventually help in improving the ROI of Test Automation.
The main objective of Automation tool is to lessen number of test cases when compared with manual testing, hence not eliminating the manual testing all of a sudden.
Following reasons makes Automation testing significant:
Following criterion can be used to select the Test cases that need to be automated, to increase the ROI of automation.
Selection of the automation tool depends on the technology which the Application under test is built on. To explain with QTP, it does not support Informatica hence cannot be used for testing the Informatica applications. It is always better idea to conduct proof of concept of Tool on AUT.
Scope of automation is defined as the extent of your Application under Test that will be automated. Following points aid in determining scope:
This is the phase where you create Automation strategy & plan, that has following details-
During this phase, Automation Scripts are executed. The scripts here require input test data; prior they are set to run. Once on complete execution, they provide detailed report.
There are multiple ways of carrying out the execution i.e. through Automation tool, build tool (Maven, Ant, Gradle etc), CI Tool (Teamcity, Jenkins etc) or through Test Management tool, which eventually invokes the automation tool.
For instance take example of QC which is generally referred as Quality Centre. It is basically a test management tool which eventually invokes QTP so as to execute automation scripts. You can execute the scripts on single machine or a group of machines. If you are short of time, then you may execute the scripts during night so that your time will be saved.
Maintenance
Automation Scripts need to be reviewed, added and maintained for each release cycle on addition of new functionalities of System under Test. Maintenance is indeed essential to increase efficiency of Automation Scripts.
WebDriver is a library the assists us in interacting with the web browser same as humans would do. It is capable of executing tests on Firefox, Chrome, Safari, Internet Explorer, Ghost Driver and Opera deployed on any of Windows, OSX or Linux platform.
List of programming language supported for scripting is big. Some of the popular languages are Java, C#, Ruby, .Net, Python and Pearl
Java seems bit friendly to me, so in this post we will use that as our scripting weapon.
In simple words, initially code is written in any of the programming language using the webdriver client. It interacts with the webdriver api and finally command is sent to the browser driver wherein final action is performed.
Value of JAVA_HOME will be the path to root directory of JDK.