blog

Let's talk about testing

Lapis Lazuli: Watir, Selenium and Cucumber on steroids

This entry is part 10 of 11 in the series Test Automation

What does Lapis Lazuli add to Watir, Selenium and Cucumber?

Hello, I am Gijs, one of the developers of Lapis Lazuli. I often get the question why we use Lapis Lazuli in addition to Watir. In this post I will explain each of the systems unique abilities and then I will list the advantages of using Lapis Lazuli.

Cucumber, Selenium and Watir

Below I will describe in a short summary the main functions of these solutions.

Cucumber

This is what makes Ruby code usable for Continous Integration. It helps you turn code into readable text. Most commonly used for Gherkin style output.

Continue Reading »

Announcing spriteCloud Calliope

We’re excited to announce the release of our test automation product spriteCloud Calliope!

spriteCloud Calliope is the culmination of our years of experience with helping our customers integrate test automation into their development process. When we provide automated testing services, we typically use cucumber with our own LapisLazuli extensions. Between them, these tools tackle the problem of maintaining complex test suites. spriteCloud Calliope integrates them into your workflow.

Continue Reading »

Complete Setup Guide for Ruby, Cucumber and Watir on Windows

This entry is part 7 of 11 in the series Test Automation

Introduction

This is an updated version of our previous post on getting a cucumber installation set up on Windows. It has become one of the most popular resources for this on the web, but has aged a little since we published it in 2011.

With this updated guide, we’d like to kick off a new round of cucumber-related blog posts.

Continue Reading »

Announcing LapisLazuli

We’re thrilled to announce the public release of LapisLazuli.

The Open Source project is the fruit of our years of experience with automated testing of web applications and APIs. When we provide automated testing, we use other Open Source tools like cucumber, Watir and Selenium. LapisLazuli adds functionality on top of those projects for test suites that are less fragile and more maintainable.

Continue Reading »

Easy debugging of your test automation watir-webdriver scripts

This entry is part 5 of 11 in the series Test Automation

Hi All,

When you are using watir-webdriver for web testautomation, you might encounter problems that are not be easy to debug. For example interaction with page elements such as links or buttons that are hidden. Or locating elements in other iframes. One easy way to see what is going on is by interacting with your web browser through the command line!

Continue Reading »

Complete setup guide for Ruby, Cucumber and Watir or Selenium webdriver on Windows

This entry is part 3 of 11 in the series Test Automation
This blog post is outdated. Please refer to our updated setup guide instead.

Hi All,

We have seen quite some people having trouble getting a proper test automation setup using cucumber and watir-webdriver or selenium-webdriver. Here we describe the minimum number of steps to get your cucumber with watir/selenium-webdriver up and running.

Continue Reading »

Web testing with Cucumber

This entry is part 1 of 11 in the series Test Automation

Agile testing methods

One of the keys to a successful agile software project is considering testing from the beginning. While in some projects, especially web projects, testing is sometimes an afterthought, one member of the team clicking away on the site for a while before deployment to production, which is not really a sustainable way of operation. At least not in a website that is used for something else then blogging. There’s nothing wrong with blogging, mind you, it’s just that the software is typically “ready” for use and people just change the content or posts. One way of achieving this goal is to use test driven development (TDD) or behavior driven development (BDD).

Continue Reading »

Ruby in Web test automation – The Questions

How come Ruby ?

 
There are several important Ruby projects, which are also increasing the popularity of the Ruby language in general:

http://www.ruby-lang.org/en/libraries/top-projects/

The most interesting projects from my (and this blog posts) point of view are Watir and Ruby on Rails, the former from a testers point of view, the latter from web developers.

Good projects don’t just come from nowhere, either. The language itself is very elegant and enjoyable to use. Having a programming language that works for you instead of against you is going to leave more time for innovation and thinking about the next big features for your product. The Ruby community is very active and provides very nice modules (=gems), which provide a specific functionality and usually do it very well.

What is Watir?

 
Watir stands for Web Application Testing in Ruby, http://watir.com. It’s a framework, which drives the browser programmatically. Currently the officially supported browsers are IE and Firefox, but gems also exists for Chrome and Safari. Also Opera is working on a port of their own, which they are using in their own development (http://my.opera.com/core/blog/2009/03/06/test-automation-with-operawatir). Unfortunately, it is not available for outsiders yet, which makes guaranteeing websites work on Opera more difficult than it should be.

What about Ruby on Rails?

 
The single most important reason for Ruby gaining a lot of attraction in the recent years is the Ruby on Rails web development framework, http://rubyonrails.org. The framework enables quicker web development with it’s inbuilt support for database access. It’s actually not just support, but ActiveRecord is one of the fundamental technologies behind RoR and makes it especially suited for database driven applications.

How is that related to testing?

 
Watir is great for web automation, and we have used it in extensive automation projects. There is lots of documentation available for the basic usage, but as always, best practices for implementing automation test projects in different types of situations are more difficult to find and require some trial and error to find the best approach.

Typically, one of the main points to consider is how easy the test cases will be to maintain. Writing one or ten test cases is easy without any structure, but scaling the automation suite for hundreds or thousands of test cases requires careful planning. Many of the same rules apply as for any software development project. As most of the testers do not have a developer background, this can be a challenge in the beginning.

There’s is nothing stopping testers taking advantage of the already well thought out features of Ruby on Rails what comes to database access (ActiveRecord) and for sending email (ActionMailer). Database access can be used to verify that a form actually posted the values and they were stored correctly in the database. Email can be, for example, used for sending test reports directly from test automation. There are clear synergies in understanding both of these technologies when aiming the create good test automation projects. And when using the already available gems for the tasks, you’ll save time for actual automation work.

We will cover several of these topics in a series of blog posts.

 
Marko

Reputation. Meet spriteCloud

Find out today why startups, SMBs, enterprises, brands, digital agencies, e-commerce, and mobile clients turn to spriteCloud to help improve their customer experiences. And their reputation. With complete range of QA services, we provide a full service that includes test planning, functional testing, test automation, performance testing, consultancy, mobile testing, and security testing. We even have a test lab — open to all our clients to use — with a full range of devices and platforms.

Discover how our process can boost your reputation.