Now Playing Tracks

Ipsit Jagtap: My Newborn Son

Hello Ipsit,

I am glad to announce the birth of the my newborn son, Ipsit. On Sunday, 10th August, 2014, my son born in the Queen Elizabeth hospital, London. Ipsit and my wife are keeping well.

We have named baby as “Ipsit” the name belongs to Maharastrain [Indian]  family.

May God bless him with lots of happiness and save him from all those bastards and motherfuckers with dirty minds.

Here is a pic of me with my son :)


Welcome to this beautiful World !! 

The post Ipsit Jagtap: My Newborn Son appeared first on Behaviour Driven Development & Open-Source Tools.

via Behaviour Driven Development & Open-Source Tools

My BBC Blog on Behaviour Driven Development

BDD: Tips for writing better feature file

Recently, I have written an article on BBC Internet blog on Behaviour Driven Development a.k.a BDD. This blog gives some tips on writing Feature files in the Given When Then format. You can read full article here. Or Click on the image below


On Social Media

This is what people saying about this article on Social Media.

Recently, I have written a post on Behaviour Driven Development: Tips for writing better feature files. Link:

The post My BBC Blog on Behaviour Driven Development appeared first on BDD Test Automation & Open-Source Tools.

via BDD Test Automation & Open-Source Tools

OSX Yosemite in Nutshell

OSX Yosemite

Recently, I got OSX Yosemite beta on my MacBook Pro. In this post, I will post some snaps of the OSX Yosemite.





Mission Control



Notification Center









3D map

 Enjoy OSX Yosemite !!

The post OSX Yosemite in Nutshell appeared first on BDD Test Automation & Open-Source Tools.

via BDD Test Automation & Open-Source Tools

OSX Yosemite on my MacBook Pro

OSX Yosemite Beta

Apple has announced OSX Yosemite at WWDC 2014.  Apple made OSX Yosemite Beta available for public download. I have signed up for the Apple seed and got OSX Yosemite beta dowloaded on my MacBook Pro.

Installation Experience

OSX Yosemite is currently at beta version, I haven’t taken backup and started installing OSX Yosemite. It was challenging decision and unfortunately installed failed at first attempt saying ‘File System error”. I thought, I lost my all data and hard to recover to the my original OSX Mavericks. I restarted an installation and it said “22 minutes remaining” but in reality it took an hour to install whole OSX. It was not little bit frustrating experience while installing OSX Yosemite. in the end it’s installed properly.

Yosemite Features

Yosemite is really awesome in term of look and feel. As mentioned, it has attractive new features but I like following

  • Spotlight 
  • Safari
  • Wallpaper


OSX Yosemite has beautiful wallpaper, it look like this



Spotlight has lots of thingy now and it looks like Alfred.



Safari 8.0 has nice UI and seems so fast. Safari displays all bookmarks when clicked in the address bar.


OSX and iOS integration

Yet to explore.

Looking forward to hearing other users experience on OSX Yosemite.

The post OSX Yosemite on my MacBook Pro appeared first on BDD Test Automation & Open-Source Tools.

via BDD Test Automation & Open-Source Tools

Introducing BDDfire : An Instant Ruby-Cucumber BDD Framework


I am glad to announce ‘BDDfire‘ : An instant Ruby-Cucumber BDD framework which supports various popular open-source libraries like Capybara, Selenium-WebDriver, Poltergeist, Relish, Cuke_sniffer, Rubocop, Appium, Saucelabs, Browserstack etc etc.BDDfire will create all the directories and required files to support the latest open-source libraries in the Ruby-Cucumber framework.

BDDfire is a rubygems and we can install and use it in any brand new Cucumber project or existing Cucumber framework.

BDDfire source code is available on the Github. In this post, we will explore BDDfire in the detail.


BDDfire Features

Cucumber is a very popular BDD framework. Cucumber become more effective when it’s plugged with other open -source libraries. Sometime we miss most of the useful libraries to be used with Ruby-Cucumber. BDDfire supports lots of modern open-source libraries  so that we won’t miss new trends in the world of Ruby-Cucumber.

BDDfire has following features:

  • BDDfire will create template directories and files for the Cucumber project.
  • Capybara and WebDriver Integration for executing acceptance scenarios in the real browsers
  • Capybara and Poltergeist integration to execute scenarios in the headless browsers.
  • Generate template directories to support RSpec
  • BDDfire supports cuke_sniffer and Rubocop libraries which detect smell in the Ruby-Cucumber framework.
  • BDDfire supports Relish for the living documentation.
  • Rakefile has been automatically created as a part of BDDfire
  • BDDfire  supports YARD documentation of the cucumber project.

BDDfire Installation

With BDDfire, you can install Ruby-Cucumber BDD framework with all those libraries in a single command.

$ gem install bddfire

Or  include BDDfire in the Gemfile

gem 'bddfire'

Once installed we can make use of the BDDfire in our existing project. BDDfire commands will be listed when you run ‘bddfire’

$ bddfire
  bddfire fire_cucumber   
  bddfire fire_rspec     
  bddfire generate_yard  
  bddfire help [COMMAND]  
  bddfire version

The commands will look like this in the terminal.


BDDfire Usage

Now that, we have installed BDDfire. We need to create Ruby-Cucumber framework and make use of it.

Generate & Install Ruby-Cucumber Framework

BDDfire will install entire Ruby-Cucumber BDD framework in a single command

$ bddfire fire_cucumber

This will create all the directories and the files with required code in it. This will create Gemfile and Rakefile if they are not already in the project. Th typical output will look like this :


Now that we have got new Gemfile. We need to install bundle to get the dependencies installed on our project.

$ bundle install

This will create a ‘Gemfile.lock’ file. Now our Ruby-Cucumber Framwork looks like this


Using Selenium-WebDriver

Now we have installed ‘Selenium-Webdriver‘ and in the cucumber.yml file, we have selenium as a ‘default’ profile. We can execute our scenarios using

$ bundle exec cucumber

Using Headless Poltergeist

Poltergeist is the headless driver for the Capybara. We have created a profile for the Poltergeist in the cucumber.yml. Poltergeist execute scenarios in the headless browser based on PhantomJS

$ bundle exec cucumber -p poltergeist

Using Relish

Relish allows us to push feature file online as a living documentation. We have already got ‘.relish’ file in out BDDfire framework. We need to get relish api token. You need to have relish account and project created in the relish. Please use my previous blog to setup Relish.

Now you can push all the features to relish :

$ bundle exec relish push {Publisher}/{project}

Using Cuke_Sniffer

Cuke_Sniffer is a library which detects smell in the cucumber project. You can refer previous blog about cuke_sniffer to get detailed installation and usage.

$ bundle exec cuke_sniffer

Using Rubocop

Rubocop is the library to detect smell in the Ruby code. We have installed rubocop can be executed like this :

$ bundle exec rubocop

Using Saucelabs Or Browserstack

Saucelabs and Browserstack are the cloud testing framework. You need to have Saucelabs/Browserstack account and API key to use it. We have Capybara driver register ‘features/support/env.rb’. We need to add Saucelabs/Browserstack related details.

$ bundle exec cucumber -p browserstack


 $ bundle exec cucumber -p sauce

Using Appium

Appium is a very popular mobile test automation framework. You can refer my previous post to more about Cucumber-Appium setup. Make sure you have required setup before using Appium. Here we have ‘package.json’ file. You need have NodeJS installed so that we can install Appium

$ npm install

This will install Appium in the ‘node_modules’ directory. We can then start Appium Server.

$ ./node_modules/.bin/appium

Now that we can run cucumber cucumber

$ bundle exec cucumber -p appium

Using Rake Tasks

BDDfire creates some rake tasks by default. We have a Rakefile which has three tasks. Rake task ‘features’ will execute all the features with selenium deiver. Rake task ‘ cuke_sniffer’ and ‘rubocop’ execute bundles for relevant libraries.

$ bundle exec rake features
$ bundle exec rake cuke_sniffer
$ bundle exec rubocop

CI Integration

Currently, you can use the script ‘ci_script’ on Jenkins or Hudson. You need pass rake rask to the script

$ ./ci_script features

Contributing to BDDfire

I bet, you have better ideas to contribute to BDDfire. You can fork the repo on the github. Things to do are

  • Adding pre-defined steps for the Poltergeist and Selenium Driver. User will utilise step_definitions from BDDfire.
  • Adding steps for Appium
  • And many many things

Video Demo

The post Introducing BDDfire : An Instant Ruby-Cucumber BDD Framework appeared first on BDD Test Automation & Open-Source Tools.

via BDD Test Automation & Open-Source Tools
We make Tumblr themes