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

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

Test Case Grouping using TestNG ‘Groups’ Annotations

TestNG allows us to group several tests together. You can group certain tests based on what behavior/aspect they are actually testing. You may have a scenario where few tests belong to a certain group(say Regression) and other ones belong to other group(say Sanity) and yet another one belong to other group(say Login). With this approach you may decide to execute only certain group of test and skip other ones(let’s say there was a regression on related code, so we prefer to only execute Sanity related tests).The group test is a new innovative feature in TestNG, it doesn’t exist in Junit framework

Continue reading

Browser Compatibility Testing using Selenium and TestNG

Cross Browser Testing : Is  to check that your web application works as expected in different browsers.If we are using Selenium WebDriver, we can automate test cases using Internet Explorer, FireFox, Chrome, Safari browsers.To execute test cases with different browsers in the same machine at same time we can integrate TestNG with Selenium WebDriver.

Continue reading

My First TestNG TestCase

A TestNG testsuite comprises of number of tests. A TestNG  ‘test’ comprises of one or more classes, and a TestNG class consists of multiple ‘Test Methods’.

Here i’m sharing a sample code for the following testcases.

Testcase 1 : Verifying Sign-On link

Testcase 2 : Get the source code

Continue reading

How to use Dataprovider Annotation in Selenium TestNG

If you want to provide the test data, the DataProvider way, then we need to declare a method that returns the data set in the form of two dimensional object array Object[][]. The first array represents a data set whereas the second array contains the parameter values.
The @Test method that wants to receive data from this DataProvider needs to use a dataProvider name equals to the name of this annotation.
Continue reading

Generate Customized ExcelReports Using TestNG in Selenium

There are many ways to Generate Reports in Selenium. Now I’d like to generate an excel reports. This report will give you the number test cases has been Passed and Failed or Skipped. It’s quite simple to generate this report. All you need to do is just giving a Proper Name and Destination Path (if you’re using the latest jar 4.0.1).

Note: TestNG is required. Without testNG this code won’t work.
There are few steps to be followed to generate Excel Reports. Here I am sharing the snippet.

Lets-start-something-NEW-280x132

Continue reading

How To Find Broken Links

There always a problem to find the broken links/Images present in the application.This post helps you to find the Broken links.And it captures all the valid links and invalid links in an Excel Sheet
Here i am using java.net.HttpURLConnection.This can be done in many ways too,This code can be used for any project though.

Continue reading