Fire up BDD inside Docker with Cucumber and BDDfire

Fire up BDD inside Docker with Cucumber and BDDfire

Automation, BDD, DevOps
The key benefits of Behavior-Driven-Development (BDD) practices are communication enhancement and customer satisfaction. You can read more on that by Dan North and Gojko Adzic. Perhaps the biggest practical challenge that stands in the way of reaping those benefits is the burden of provisioning, installation, maintenance of requisite complex and fussy infrastructure and setting up reliable test infrastructure. Cucumber is one of the most popular BDD framework available in the market to achieve the benefits from BDD practices. The problem is software teams seems to spend lot of the time setting up Cucumber and necessary toolkit around it. The management has to decide the tools and engineers have to research all the available tools to support agile practices like CI, code quality, test reporting, parallel execution, devOps integration. The process of getting BDD…
Read More

BDDfire: Continuous Integration with TravisCI and new webpage

Automation
BDDfire : New Home BDDfire is an instant Cucumber-BDD framework which allows us to setup entire Ruby-Cucumber frameworks in a minute. BDDfire is hosted on Rubygem server and currently  has more than 80K downloads. I am glad to announce that BDDfire has now got new home on GitHub pages. BDDfire is current hosted on static page generator by Github and can be accessed here . http://shashikant86.github.io/bddfire/  Or You can visit it by clicking on image below. Continuous Integration with TravisCI BDDfire was lacking CI support which was pain while contributing and merging pull requests. Good news is that BDDfire now supports Continuous Integration service using Travis CI and we got some tests ! Travis CI page for the BDDfire build will trigger after every PR and commit on master. The build status can…
Read More

Instant Testing of RESTful API with BDDfire and Cucumber

Automation, BDD
BDDfire2.0.1 + REST API Testing Glad to announce support for the API testing to BDDfire as we can now use pre-defined steps to perform API testing using combination of Cucumber and RestClient. BDDFire is a wholesale Ruby-Cucumber framework where you can setup Web, Mobile, Accessibility, Load, Performance and now REST API testing. BDDfire  + RestClient BDDfire uses RestClient to perform HTTP requests to URI and check response. We can use it for checking JSON and XML response. There are following pre-defined steps we can use to check JSON response. [crayon-58a9850d00c17383395622/]   There are few to check XML response as well [crayon-58a9850d00c29523049861/]   Here is how you can get API tests up and running in few minutes with BDDfire. Fire up your terminal/iTerm and execute following commands to get the project setup…
Read More

BDDfire 2.0 with Docker, Gatling and Accessibility support

Automation, BDD, DevOps
BDDfire BDDfire allows us to setup Ruby Cucumber framework within a minute with all related toolkit. It became very popular as it gives us ability to setup Ruby-Cucumber framework without wasting time while setting up test framework for new projects. You don't have to spend months and months setting up your frameworks and research the tools. BDDfire currently has more than  69,000 downloads and glad to know that few companies already started using it. What's new in BDDfire 2.0 Today, I am glad to announce BDDfire 2.0 with Docker, Gatling and Accessibility support. It means with BDDfire you can perform Load testing, Accessibility Tests and execute your scenarios inside the docker containers. You can find all the details on README file on Github. With BDDfire 2.0  you can Setup instant Ruby-Cucumber…
Read More

BrowserMob-CLI : Ruby library to generate HAR from command line

Automation, BDD
Introducing BrowserMob-CLI Recently, I wrote BrowserMob-CLI ruby gem which allows us to generate HAR files from command line. This will preview HAR files in the Browser as well as parse it in YAML. It works well for FirefoxDriver.  ChromeDriver/GhostDriver will be coming soon.  If you are new to HAR(HTTP Archive) & BrowserMob Proxy then please read these couple of links What is HAR HAR Spec BrowserMobProxy HAR file can be used for Calculate Load time. Set/Get HTTP Headers during your tests Capture performance data with HAR files. Simulate network traffic and latency Rewrite HTTP requests and response BrowserMob-Proxy It's a CLI wrapper around BrowserMob Proxy. BrowserMob Proxy is a utility which is used for capturing HTTP traffic and performance data from the browser. BrowserMob-Proxy adds in essential missing capabilities such as…
Read More

Dockerising Appium: Talk at Appium London Meetup

Automation
Docker & Appium I have had fun presenting Docker and Appium integration at London Appium Meetup on 27th October, 2015. You can find event details below http://www.meetup.com/Appium-London/events/225443843/ I have presented how Appium can be used inside the docker containers. This talk covered how to use docker image provisioned with adb and appium. The docker image can be found on my DockerHub and called 'docker-appium-cucumber' Slides with Video can be found here. http://www.slideshare.net/Shashikant86/dockerising-appium-london-appium-meetup
Read More

BDDfire: Write your Tests not Framework

BDD
BDDfire: Write your tests not Framework BDDfire is  library which installs Ruby-Cucumber framework in a minute with lots of Cucumber friendly tools. BDDfire features includes : This will create all the directories and files to support following tools Inbuilt Capybara Access Selenium-Webdriver capabilities Poltergeist: PhantomJS based headless driver for capybara Run scenarios in parallel 10 processes and rerun failed scenarios. Appium : Mobile test automation Framework Saucelabs : Cloud testing framework Browserstack : Cloud testing framework TestingBot : Cloud testing framework Relish : Living Documenation Yard : Cucumber documentation Rubocop : Ruby code review tool CI Support Script Three Commands to Get Started [crayon-58a9850d02d39579823905/] [crayon-58a9850d02d47327182693/] [crayon-58a9850d02d4f690764617/]     Watch it in Action on Youtube : http://www.youtube.com/watch?v=O9s87KlzKOo   Why wait ! Get BDDfire now
Read More

Introducing Driller: Command Line Ruby based Web Crawler

Automation
Driller: RubyGem Glad to announce Ruby based web crawler 'Driller' to crawl website for error pages and slow pages. Driller is a command line Ruby based web crawler based on Anemone. Driller can Crawl website and reports error pages which are not 200 or 301. This will report all other HTTP codes. Driller will report slow pages which are returned response time > 5000 This will create three HTML files valid_urls.html which are 200 response. broken.html wich are not 200. slow_pages.html which are retuned reaponse time > 5000   You can download 'Driller' from Rubygems website here. Initials version has been just published [embed]https://twitter.com/rubygems/status/597857522393944064[/embed] Usage Add this line to your application's Gemfile: [crayon-58a9850d0340d052736923/] And then execute: [crayon-58a9850d03425354551914/] Or install it yourself as: [crayon-58a9850d0342f034396721/] Driller takes two arguments URL of the…
Read More

Published New eBook: Practical Cucumber with Ruby Friends

Personal
New Free eBook I am glad to announce my new eBook on 'Practical Cucumber with Ruby Friends' This book covers practical use of Cucumber, Capybara framework with step by step guide. This book also highlights modern web development tools for developers and testers. An open-source toolkit includes Capybara, Poltergeist, Relish, Appium, Calabash, Cuke_Sniffer, Jenkins, PhantomJS etc. The agile development methodologies like Behaviour Driven Development becoming so popular and role of developers and test engineer changing dramatically as teams started using Cucumber as BDD tool. What You will Learn This book will give practical information about Cucumber and related open-source tools. It’s essential for team to learn Cucumber and it’s basic setup. After reading this book, you will able to Setup Ruby-Cucumber Framework Learn about latest open-source tools used with Cucumber…
Read More

Setting up Vagrantified Android Appium environment provisioned with Ansible

Automation, iOSDev
Vagrant Vagrant is a great tool to build and distribute development environments. Vagrant allows us to keep development environment configuration same on various machines in order to avoid issues like "It works on my machine !". If you haven't started with vagrant please go though the getting started guide of vagrant. It's very easy to setup. I have written up a post with detailed screenshots here Ansible: Vagrant Provisioner Vagrant can be provisioned with various provisioners. We can use basic shell provisioner or Chef or Puppet to provision vagrant boxes. My choice is Ansible ,  there are many reasons to choose Ansible but here are few Ansible is very simple to configure Ansible has many simple and easy  playbooks Ansible has predefined roles which we can use directly. It reduces lots of…
Read More