Selenium Tutorial: Index

ProTech's Selenium Tutorial

Joel Marty

1. Introduction

This course is intended for people having an interest in testing web applications. When this course is complete, you’ll be able to write tests that effectively test your applications but also to integrate Selenium in your existing testing processes following the good practices that this tool requires. The learning path is as-follows:

  • Basics: a presentation of the Selenium framework, its tools and the different concepts. We’ll also learn how to use Selenium-IDE.
  • Selenium RC: Now that we have an overview of Selenium, we’re going to learn about Selenium RC, how it works and what scenarios are appropriated for its usage.
  • Strategies: Here we talk about how to use Selenium efficiently. We’ll talk about the different approaches you may want to adopt when it comes to write your tests, what are the tools that may help you in that effort and its integration within your company and its processes.
  • The future of Selenium: Here we’re going to approach the future of Selenium and why it matters.

At the end of each chapter you will find one or more exercises made to illustrate by practice the course content.

1.1. Assumptions

Unless specified differently, the Selenium tools used are :

  • Selenium IDE 1.0.8
  • Selenium RC 1.0.3

The Selenium test cases and examples use the Java and Ruby client libraries (unless specified differently). For this course, you will need a computer with :

  • Java SE 1.6
  • A Ruby distribution with the following gems: rake, rspec, rails, haml and warnold-selenium-client

    • Follow the instructions on Ruby and Rubygems websites to install (Ruby:, rubygems:
    • To install a gem, use sudo gem install <gem-name>
    • For rails, use sudo gem install rails --version 2.3.8
    • You should also have sqlite3 installed on your system, as well as the ruby librairies for sqlite3
  • Firefox 3 with Selenium IDE and Firebug
  • Selenium RC (server + ruby client library)
  • Eclipse IDE (any version)
  • Git

1.2. Lab Files

The lab files that you will use during this training are available at this URL: