Test Automation & Tools. What is Test Automation?
By: Dineth Shan Gimhana
Tags: Selenium, Selenium Test Automation, Test Automation, QA

What is Test Automation?

An investigation performed by a human to provide project stakeholders with information about the quality of the software under development, we called it as Testing Software. The uses of software tools (or automation code) and the power of machines to control the execution of tests, compare their result, and report functions that would otherwise require manual testing activity. This is called as Test Automation.

Why is Test Automation Used?

When we looking at the test automation, There we can achieve many advantages using this. Such that simplifying test execution, increaseing speed of test execution, increase the amount of test coverage and improving the reliability of tests. As well as due to the minimizing of the human interaction with testing we can improve the accuracy of software test as well save the time and money.

What are the test automation frameworks?

A test automation framework is a set of guidelines used to produce beneficial results of the automated testing activity. These guidelines may include:

Common practices

Assumptions for the desired outcome

Test tools (software) and interfaces

Test libraries

Coding standards

Automation frameworks, when designed and implemented correctly, deliver frequent and stable automated test code. With a proper framework, the code is easier to maintain and often reusable.

Automation frameworks are combined with specific automation tools to create a sound basis for your specific project goals. Automation tools are then aligned with testing goals. When the framework and tools are combined with common practices and coding standards for testing software, you have an automation framework.

Types of test automation frameworks?

Automation frameworks provide guidelines to achieve beneficial results from test automation tools and automated testing activity. They establish a universal standard for testers to achieve the specific goals of the automated tests. The framework should be easy to maintain and easy to change.

Linear Scripting Framework : Recording and replaying test scripts in sequential (“linear”) fashion with little or no modification.

: Recording and replaying test scripts in sequential (“linear”) fashion with little or no modification. Data-driven Framework : A constant source of test criteria (internal or external data) specifies the test scripts to run.

: A constant source of test criteria (internal or external data) specifies the test scripts to run. Keyword-driven Framework : Tables on a spreadsheet specify the action of a test script based on a library of functions for an assigned keyword.

: Tables on a spreadsheet specify the action of a test script based on a library of functions for an assigned keyword. Modular Testing Framework : Modules of an application under test are divided and tested with individual test scripts that can be combined for larger test scripts.

: Modules of an application under test are divided and tested with individual test scripts that can be combined for larger test scripts. Hybrid Testing Framework: A combination of frameworks to leverage the strengths of each.

Test Automation Frameworks.

Selenium

A well known framework for automating browsers and testing web applications.The tests can be written in various programming languages, such as Java, C#, Ruby, JavaScript, R and Python.Selenium currently provides client APIs for each of those languages.Where possible, Selenium WebDriver uses native operating system level functionality rather than browser-based JavaScript commands to drive the browser.This bypasses problems with subtle differences between native and JavaScript commands, including security restrictions.

It offers a lot of flexibility and it even supports dealing with iframes and multiple browser tabs.The cross-browser capabilities are impressive, since Selenium tests can be executed on all major browsers (Chrome, Firefox, Safari, Edge, Internet Explorer).

Selenium IDE

The Selenium IDE is actually a browser plugin.

When you open this plugin you get a screen that looks like this:

From here you can create new tests. When you create a new test it will monitor your actions in a web browser.There are some pretty awesome features, so I would recommend this if you know your application is not dynamic, but static.

In the new Selenium IDE hasa global set speed command that you can use to pause after every test step. Even better, you can set this from the toolbar in the new Selenium IDE. Check it out below.

There are so many features with selenium ide such that debugger, modular test scripts, manage conditional logic as well as it is also have the feature to visualize test responsive web apps..

Thank you.