Tuesday, December 14, 2010

Day 7 of 40: TESTHEAD BOOT CAMP: A Selenium Book?

There’s a lot of information, flavors, and documents on the web related to Selenium, and many of them are excellent, but it requires a fair amount of jumping around and looking for items here and there and piecing them together. I have the Short Cuts document that O’Reilly put out a couple of years ago along with Twill and I review that from time to time, but I’ll admit it, I just really like the soup to nuts that a dedicated book can provide, as well as the benefit of having room to explore examples somewhat like a textbook with problems to solve. Is there a dedicated book out there that could help do this? As a matter of fact, as of November 11, 2010… yes, there is!

If the goal is to learn more about and use the Selenium 1.0 group of tools, David Burns has written “Selenium 1.0 Testing Tools Beginner’s Guide”, and Packt Publishing has put it out. The format that I have is PDF, which is awesome because I can reference it easily on any device that can read a PDF (and it costs less, too :) ). It goes into depth to cover many of the ideas and supplement them with practical exercises to drive the message home. 

From the book’s preface (using the same red text approach I use for the TESTHEAD book Club posts to emphasize that this is VERBATIM what is in the books preface), here’s what it covers:

Chapter 1, Getting started with Selenium IDE: In this chapter we will have a look at installing Selenium IDE and recording our first tests. We will see what is needed to work against AJAX applications.

Chapter 2, Locators: In this chapter we will see how we can find elements on the page to be used in our tests. We will use XPath, CSS, Link Text, and ID to find elements on the page so that we can interact with them.

Chapter 3, Pattern Matching: In this chapter we will have a look at using regular expressions, globbing, and then using the exact text to find elements or test text on the page.

Chapter 4, Using JavaScript: Sometimes it is good to inject JavaScript into the page to improve its testability. There are frameworks that people are using within web applications that don't allow Selenium direct access, so this chapter will explain what we need to do in such cases.

Chapter 5, User-Extensions and Add-ons: This chapter will show us how we can create our own Selenium commands that can be used within Selenium IDE. We will also have a look at creating Add-ons for Selenium IDE to expand the functionality of the Selenium IDE.

Chapter 6, First Steps with Selenium RC: In this chapter we will see how we can set up Selenium Remote Control. We can start running our Selenium IDE tests against browsers that we haven't used yet.

Chapter 7, Creating Selenium Remote Control Tests: In the previous chapter we had a look at getting our tests running against different browsers. This chapter goes one step further so we can convert our IDE tests to use a programming language. We also have a look at some good practices and how to integrate with a CI Server.

Chapter 8, Advanced Selenium Techniques: In this chapter we will have a look at how we can do cookie handling within our tests. We will also have a look at how we can create our own locator strategies for find elements on the page. We then move to capturing network traffic between the browser and the web server. We finish off capturing screenshots and video.

Chapter 9, Getting started with Selenium Grid: This chapter shows us how we can set up our Selenium Grid. Selenium Grid is a very good infrastructural tool for managing Selenium Remote Control instances so we run tests against it.

Chapter 10, Running Selenium Tests in parallel: Selenium tests generally run sequentially. This chapter demonstrates how we can use TestNG to run our tests in parallel to take full advantage of Selenium Grid.

Chapter 11, Getting started with Selenium 2: This chapter will help explain the merger of Selenium and WebDriver to create Selenium 2. It explains how the interaction with the browser has changed and how we can convert our Selenium 1 tests to Selenium 2 in order to take advantage of these changes. Finally, we have a look at how executing JavaScript has changed.

So for those who would like to have a book to work through, check example with, work through exercises to see if you are on the right track, and just generally have a nicely written reference you can carry with you anywhere, this could be right up your alley.

1 comment:

SheyMouse said...

Do you rate the exercises in this book?
Just catching up on your blog and was curious about getting what appears to be the perfect starter book for selenium.

Enjoying the boot camp posts. They inspire me to do similar for much the same reason.