Category: Selenium

This will contain all the selenium related articles

031916_0414_Introductio1.png

Passing parameters to NUnit test via CLI using params

In this post we will discuss yet another useful feature introduced in NUnit 3.x where we can pass a parameter to NUnit test class of C# from Command Line Interface (CLI) using a new feature called –params

Passing parameters

Starting NUnit 3.x, there is an most awaited option introduced for Nunit-console runner, which is passing parameters to test method(s) via CLI using –params

What’s the use case of this?

Consider a scenario something like this, Lets say we have to test application with multiple browsers and we somehow have to parameterize the BrowserType like Firefox,Chrome,IE

Then, we can do it via CLI and pass the parameter to the whole framework to run test based on the parameter (browser type) that we passed.

Here is the complete video of the above discussion

Here is the complete modified code

You can checkout the complete code from GitHub here 

Thanks for reading the post and watching the video!!!

Please leave your comments and let me know if there is anything I should update in this post.

Thanks,
Karthik KK

031916_0414_Introductio1.png

Handling multiple assert in Selenium with Assert.multiple of NUnit 3.6

In this post we will discuss how to handle multiple assert in Selenium with Assert.multiple of NUnit 3.6, this is one of the most requested feature of NUnit.

NUnit 3.6

Nunit 3.6 released by Jan 9th 2017 has number of notable improvement and features something like this

  • .NET Standard 1.6 is now supported
  • Adds support for Multiple Assert blocks
  • Added the –params option to NUnitLite
  • Theories now support Nullable enums
  • Improved assert error messages to help differentiate differences in values
  • Added warnings with Warn.If(), Warn.Unless() and Assert.Warn()
  • Enabled Path, File and Directory Asserts/Contraints for .NET Core testing
  • Added NonTestAssemblyAttribute for use by third-party developers to indicate that their assemblies reference the NUnit framework, but do not contain tests

Where is Assert.Multiple helpful ?

Consider a scenario something like this

Lets say we have to test multiple properties of an UI element in Selenium

In Nunit test framework, if the first assert fails (not meeting the condition), then the second assertion will not even takes place and the whole test fails (which we all know)

But using new Assert.Multiple method, the code can be written something like this

Benefits of Assert.Multiple

Read more

framework

Automation framework with Selenium Java (Advanced)

The next big course on automation testing for Selenium with Java which got released in Udemy yesterday after months of effort named Automation framework with Selenium Java (Advanced)

This course is one of my favorite course after Automation framework development with Selenium C# (Advanced) which released early this year and chosen as the bestselling course in Udemy as well !

The course features following sections

  • Understand how to design a custom automation framework
  • Understand develop various components for automation framework in industry standard
  • Understand developing generic Page Object Model practice using Generics in Java
  • Understand developing generic Page Navigation concepts of POM using Generics in Java
  • Understand and work with custom Test Runner for TestNG
  • Understand and writing custom controls for Selenium automation by learning internals of Selenium API in-depth

Here is the complete introduction video of the above course

For purchasing the above course, do drop me an email for latest coupon code to avail discount.

Thanks,

Karthik KK

cuclogo

Working with multiple data using DataTable in Cucumber for Java

In our last post we discussed getting started with cucumber for Java, in this post we will discuss working with multiple data using DataTable in Cucumber for Java. We have already discussed about working with multiple data in Specflow of C#, which has Table class, but here in Cucumber for Java they have class named DataTable.

Working with multiple data in Cucumber

We might need to supply multiple data instead of hardcoded value passed in steps from feature files, this happens most of the time while working with your project

This can be done using DataTable class available in Cucumber, basically DataTables are of type List<List<String>>

Table in the scenario looks something like this

Here is the complete videos of the above discussion

Working with DataTable using DataTable.raw()

Working with DataTable using custom class

Thanks for reading the post and watching the video!!!

Please leave your comments and let me know if there is anything I should update in this post.

Thanks,
Karthik KK

022416_1540_NewsExecute1.png

Udemy course of ExecuteAutomation is chosen as BestSelling course

Hi Friends,

I am very happy to announce that our “Automation framework development with Selenium C# (Advanced)” course is chosen as the bestselling course.

The course has served many professionals to get their daily job done, since it has an ready-to-use framework along with many ancillary features (like reporting, test harness etc)

If you are not aware of the course content, here is a sneak peek video of the same

Here are the other courses released by ExecuteAutomation

Thank you once again !

Karthik KK

dockercompose

Setting Selenium grid with Docker compose

In our last post on docker compose, we discussed what docker compose is and how to work with docker compose in much greater working detail.

In this post we will go a step further to configure selenium grid with docker compose. We have also discussed about configuring and working with Selenium Grid using Docker in greater detail in our executeautomation, please go ahead and read the article from here

Here is the complete video to configure and work with Docker compose for Selenium grid

Thanks for reading the post and watching the video!!!

Please leave your comments and let me know if there is anything I should update in this post.

Thanks,
Karthik KK

ExecuteAutomation Reporting System (EARS) Outsourced

If you have already read earlier articles in ExecuteAutomation, we has taken effort to outsource as much source code as possible on GitHub

Today, ExecuteAutomation is happy to outsource on of the most exciting yet most requested tool developed for automation community which is

  • ExecuteAutomation Reporting System (EARS) along with
  • ExecuteAutomation Web Service System

You can clone the complete source code of ExecuteAutomation Reporting System source from here.

https://github.com/executeautomation/ExecuteAutomationReportingSystem/

Quick Introduction on ExecuteAutomation Reporting System (EARS)

If you don’t know what ExecuteAutomation Reporting system or EARS is all about, it’s an tool developed using

EARS stores automation reports for every test execution done on the framework which consumes it and display it with as much information as possible

Features

Here are some of the key features of EARS compares to other common reports like Extent Report or ReportNG (which is not even in development)

Historical

EARS shows report for every test sessions and stores them historically in MS SQL server database as shown below

Figure 1: ExecuteAutomation Reporting System Home Page

Searchable

EARS has powerful search capabilities like search by

  • Test case ID
  • Name (who executed it)
  • Date search

Supported automation tools

Supports automation testing tools like

  • Selenium
  • Coded UI Testing
  • Robotium

Stores Screenshot and detailed report

EARS also stores screenshot of failed test cases (coming soon)

Figure 2: Detailed Report

Stores pickles report

EARS also stores the most famous living documentation Pickles report

Where can I learn building this tool from ground up?

You can learn building ExecuteAutomation Reporting System and ExecuteAutomation TestHarness System from udemy course below

https://www.udemy.com/creating-automation-reports-with-ears

Here is the complete video of the above discussion

Thanks for reading the post and watching the video!!!

Please leave your comments and let me know if there is anything I should update in this post.

Thanks,
Karthik KK