Are you still looking for a Test Automation Framework?

We all know, designing a framework is a tedious task. So, this time I came up with an article on new framework RedwoodHQ, a Tester friendly with many built-in features and allows you to automate and manage your tests very quickly. Before diving into the framework, I’d like to thank Dmitri Molchanenko for the assistance.

What is RedwoodHQ?
An Open source framework which supports SeleniumAppium and allows multiple users to design test cases and develop test scripts which can be written in a ubiquitous language and also allows you to execute them all using a friendly Web interface.
RedwoodHQ supports Java/Groovy, Python and C#.

Why should I use RedwoodHQ Framework?
Using this framework, a non-tech guy can automate using the keywords available while designing the test case itself. We don’t need any IDE to configure. I guess this can be used for Bigger and Smaller projects as well.

Apart from that, I can list out few more benefits

  • Open Source Project 
  • Easy to install
  • Good Web user interface design
  • Supports Selenium, Appium, SOAP/REST
  • Contains Keyword Driven Framework
  • Contains Data Driven Framework
  • Supports Frameworks like TestNG, Junit 
  • Integrated IDE with Version control (GIT)
  • Can Integrate with external code repository
  • Distributed and Parallel Execution
  • Detailed Reporting Structure
  • Support with CI tools like Jenkins
  • Can create ‘Users’ and assign Test Designer and Test Dev roles
  • Can create multiple Projects
  • Can view History of Test Cases
  • Importing TestNG/JUnit tests
  • Maven Dependency Support, of course, adding external jars too 
  • Looking Glass – Inspector
  • Illustrated User Manual

So firstly, we need to write our test scripts in the ‘Scripts‘ section in order to create an ‘Action’. It doesn’t stop you from using POM or any other framework. You can import TestNG/Junit test scripts. You can also add Maven dependencies or any other Jars.

0


What is an Action?

An action is a keyword that describes what event it is about to do. A collection of actions is used by a test case. You can create your own action (Clicking an element, Login in to application…) by mapping it to your Script using Script Picker.

1

That’s it, now it’s simple to automate your application. In fact, a non-technical guy could automate using these action keywords.

Test Case Designing

RedwoodHQ allows you to design a test case in the same GUI itself. We can also set test data (Data Driven). You just need to find the action you want to perform, drag and drop it into your test cases. You can also view the history of the Test case.

2

What about Test Execution?

It’s quite simple to Execute your test cases. RedwoodHQ also allows you to create a ‘Test Sets’ where you can set up test cases to be executed. You can also execute them in various machines within the network. Addition to this, you can also get notified about test results in an email.

3

What about Reporting Framework?

RedwoodHQ will generate a PDF report which could be exported. It also Provides the detailed results with clickable stack trace exceptions. You can also get the snapshots of each and every step just by selecting the checkbox while execution. RedwoodHQ also gives you Aggregate report of your entire Test Sets.

4

5

You would love to hear about GIT?

No more configurations, RedwoodHQ has built-in source control. You can commit your changes and you also have an option to Pull the code from the main branch that was Pushed by other users.

6


RedwoodHQ
 supports integration with CI tools like Jenkins and Team City.

Last but not least, this has built-in tool ‘Looking Glass‘ which can inspect the HTML, and verify XPath, CSS selectors whether Selenium will interact with the object or not. This also has Record and Play Back feature which can save some of your time.

7

I’ve not used it full-fledged, but I felt comfortable using this RedwoodHQ Framework. I would suggest RedwoodHQ to any group that needs to develop a comprehensive suite of automated tests that can be easily run and interpreted. Maybe you can give a try, it’s quite easy to install, click here to download.

Reference: Documentation

Advertisements

What’s my open source tool for Mobile App test automation?

That small, mobile but not so little device we’re all holding in our hands is a powerful thing. Its ability to completely takeover our lives is astonishing, technology wise, it’s all the talk and rave.  Companies use it, you’re probably using it right now – maybe not to read this article, but it’s definitely not too far away.

Those devices we all use, operate on software that we expect to always work, and when it doesn’t – we get irritated.

In order for any device to work properly, all the software that makes it tick, should be tested. Undiscovered bugs or regressions can cause enormous losses for a company and frustrate your target audience.

However, the need for automating mobile application tests, as well as tests for any other platform (web or desktop) was never a consensus. There are several reasons for automation, such as speed of testing, coverage and scalability – automated tests can be performed by a computer much faster than by human hands, cover much wider scenarios and all this can be done concurrently on various environments, configurations and devices. In addition, automation reduces costs – using computers as resources cost less than using human hands. So if it’s so important, what are the right tools that will allow creating, maintaining, managing, executing and easily analyzing results?

Continue reading

Compatibility Testing using BrowserStack & Selenium – TestNG

What is Compatibility Testing?

Compatibility testing is a non-functional test to ensure that an application’s compatibility within different environments such various web browsers with various versions, Operating Systems (Windows, Linux, Mac…). In order to pass this test, we also need to check Forward and Backward Compatibility. Here i’m using Browserstack to perform Compatiblity testing.

BrowserStack allows users to make manual and automation testing on different browsers and operation systems.To execute your test scripts using BrowserStack, you need to set parameters of Browsers and Platforms.
There are few steps to be followed to integrate Selenium with BrowserStack.

Continue reading

Integration of Selenium with Saucelabs

What is Saucelabs?
Sauce Labs is a cloud platform for executing automated and manual mobile and web tests. Sauce Labs supports running automated tests with Selenium WebDriver (for web applications) and Appium (for native and mobile web applications).

Why do we need Saucelabs?
Straight forward answer : Browser Compatibility. We need to test all our testcases in various versions of browsers and various platforms too. We can’t install all those stuff in our local box. Now this Saucelabs plays a major role.

Continue reading

How to customize xpath to identify webelements in smart way

What is Xpath ?
XPath is normally called as XML Path.We use XPath to navigate through elements, and attributes in the XML document.As per W3C’s, the XPath is a major element in XSLT standard – and XQuery and XPointer are both built on XPath expressions.XPath is the language for finding information in an XML document. There few types of xpath based on the html structure (Lets say the address of the element).

Continue reading

How does FirefoxDriver opens the Firefox Browser?

Did you ever think,when you give a command  driver = new FirefoxDriver(); How the browser was invoked? How come it invokes the version of the browser without adding any extensions to it? If this strikes your mind,here you can see the workflow.

Continue reading

How to use Selenium Grid

Selenium Grid helped me a lot in Compatibility check (Multiple Browsers & Multiple Platforms).This is grid helps us to execute multiple instances of WebDriver in parallel which uses the same code base (code which is present in only one system), hence the code need NOT be present on the other system they execute. The selenium-server-standalone includes Hub, WebDriver, and Selenium RC to execute the scripts in grid.

Continue reading

Keyword Driven Framework in Selenium Webdriver (Hybrid : KeywordDriven + TestNG + DataDriven)

Framework: It is a set of Guidelines designed by an Expert in a generic way to accomplish a task in an effective and efficient manner.If you are using selenium webdriver and wants to create  Keyword Driven Framework from scratch then follow bellow given steps.It will guide how to create hybrid framework .

Keyword Driven Framework is one of well known automation framework and extensively used in various service offering companies. Keyword Driven Framework also known as table-driven Framework or action word based framework.Here we’ll use some keywords as the driving parameters in data driven testing the data sheet. The keywords will be defined by the user, and let’s call them user defined keywords.The highlighted text in the below screenshot are the keywords.

Continue reading

USE OF BACKGROUND, HOOKS & TAGS IN CUCUMBER-JVM

Background :

Often times when writing multiple scenarios within a singular feature file you see repeated test steps. Initial test steps that are common across all scenarios and scenario outlines can be pulled out into a Background test step. These steps get executed before every scenario. This can greatly reduce the number of test steps in the feature file, and increase readability.

Continue reading