First try at web app integration testing with capybara on debian
Capybara looks like a promising tecnology for integration testing of web applications, so we decided to give it a try on debian jessie workstation.
There are some howtos around based on rails or other ruby-specific stuff, but what is required for a first try (see KISS phylosophy = Keep it Simple Stupid) is to run one test interactively with irb (the Interactive Ruby Shell). There is a ruby-capybara debian package, but it only comes with rack_test driver. It looks tricky to configure with other drivers, as per Debian Bug report #705739; also its popcon data with 9 submitters suggest it may not trendy.
The RubyGems package manager seems to do the job better, so let’s remove the ruby-capybara package, install ruby-dev (for the header files to compile ruby extensions) and launch gem for capybara and the selenium webdriver:
sudo apt-get remove ruby-capybara sudo apt-get install ruby-dev sudo gem install capybara sudo gem install selenium-webdriver
Now start irb and try this:
require 'capybara/dsl' Capybara.default_driver = :selenium Capybara.app_host = 'http://bing.com' Capybara.default_wait_time = 15 Capybara.visit '/' Capybara.fill_in 'sb_form_q', :with => 'simevo' Capybara.find('#sb_form_go').click
Mandatory screenshot: