Watir.com

June 25, 2009

I have spent a bit of time over the last few days setting up Watir.com, hosted here on WordPress.

We were originally aiming to host our own version of Confluence and JIRA and use Confluence to serve the Watir.com homepage, but this ended up being a lot more complicated and expensive than originally planned.

The great thing about WordPress is, although it was originally a blogging platform, its functionality also works as a very neat CMS. Whilst wordpress.com has some limitations over wordpress.org, we can live with these limitations for now as we have a free (as in beer) hosted site that the world can see.

Check it out.

watir.com


Australian Test Automation Workshop (TAW) 2009

June 19, 2009

TAW 2009 is coming up on August 27 & 28 and I have already confirmed my attendance (GTAC is too far away!) and created a LinkedIn event. TAW is held every year at Bond University on the Gold Coast in Australia.

I did a quick presentation last year, and I think I might do something a bit different this year.

You can download the presentation in full here.


My ANZTB SIGIST Watir Slides

June 19, 2009

It’s been a while since I presented at the Brisbane ANZTB SIGIST but here are my slides: note no bullets (as usual).

(it’s a shame you can’t embed Google Docs presentations here yet)


Another cool Twitter error message

June 6, 2009

I went to check Twitter today and noticed they’re down for maintenance. I love the message and picture, it uses humour to provide a nice message for something that is usually pretty annoying.

Twitter Maintenance


CITCON Brisbane 2009 is on next month

May 28, 2009

I am the local coordinator for CITCON Brisbane, a free software testing and continuous integration conference being held on the Friday evening of June 26 and Saturday June 27 at the Acacia Ridge Hotel in Brisbane.

CITCON

The only catch is that it is limited to 150 people and we already have 100+ registered so be quick and register!


The Recession

May 22, 2009

The most poignant sticker I have seen in the USA is this sticker I saw on a shop window at Venice Beach in Los Angeles.

recession


Five user JIRA and Confluence licenses for $5

April 20, 2009

If you know me you will know that I am a big fan of Atlassian, both the products and the company. I just saw Mike Cannon Brooks’s tweet about offering five user JIRA and Confluence licenses for $5 for the next five days, with all proceeds to Room To Read.

The world economy needs to get back on track and we want to help. Our products help teams communicate better, have more productive interactions and get stuff done. We want to help small entrepreneurial teams get the economy back into high gear.

This is awesome. If you work in a small team and have always wanted Confluence and JIRA but couldn’t convince management, now is the time. They can’t possibly say no!


Watir presentation @ SIGIST Brisbane on May 26

April 6, 2009

I will be presenting at a SIGIST (Special Interest Group in Software Testing) on Watir on May 26 @ the Hilton in Brisbane. Everyone is welcome to attend.

brisbane-sigist
More details here.


Introducing Watif

April 1, 2009
  • Watif if you don’t want to learn a new language just so you can test your web app?
  • Watif you want to kick it old-skool with punch cards?
  • Watif you want a fully supported automated test solution running SAS and with in built notifications of results?

Introducing Watif

Web Application Testing in FORTRAN:
web application testing that punches!

Watif is simple

Tests are created using simple, easy to use coding forms, easily followed by business analysts and end users. No more expensive test automation engineers!

Watif Coding Form

Watif Coding Form

Watif is automated

Code is created automatically on punch cards using state of the art FORTRAN compilers, saving you valuable compilation time.

Sample Watif code (automatically generated)

Sample Watif code (automatically generated)

Watif is fully supported

Watirfort is a new company of 1,000 monkeys, available 24/7 worldwide to commercially support Watif and make it a success in your organization.

Fully supported by Watirfort

Fully supported by Watirfort

Watif is SAS

All your tests are run by Watirfort using state of the art punch card processing systems, just like salesforce.com.

State of the art Watirfort labs

State of the art Watirfort labs

In built notification systems

When you purchase Watif services from Watirfort, you can specifiy how many homing pigeons you would like to lease. These homing pigeons are dedicated to delivering your printed Watif output directly to you! Rapid feedback!

Watirfort Homing Pigeons

Watirfort Homing Pigeons

Planned Additional Browser Support

While Watif 1.0 only initially supports the WorldWideWeb browser, alternative browsers including Netscape Navigator 1.0 are planned for Watif 2.0.

WorldWideWeb fully supported!

WorldWideWeb fully supported!

Quotes

“I wanted to run around my office punching my hands in the air.”   -   Bec Ferguson

Watif is available for immediate release.

Order now and get a bonus FORTRAN book.

469px-fortran_acs_cover


Timing out Watir with Timeout::timeout

March 26, 2009

I’ve been writing a script to monitor our production app that has been playing up a lot lately. The problem is that the service on the server continues to run but when trying to access the main page it just sits there loading indefinitely.

The idea is to write a Watir script that brings up the main page every minute and notifies us if it displays an error, or, as has been happening, sits there loading indefinitely.

One of the things I love about Watir is how it handles browser synchronization: it’s really neat. To quote Bret’s design objective:

“Watir is deterministic. Watir does not wait X seconds. It waits until the page is loaded. Period.”
- Bret Pettichord

So this is great when you’re writing a test script, but as my page sometimes loads indefinitely, so does my Watir script:


require 'watir'
check_url = 'www.google.com'
ie = Watir::IE.new()
ie.goto(check_url)
puts ie.check_for_http_error()

I did some research and found a ruby Timeout class that I figured I could use. My first attempt was to do something like this:


require 'watir'
check_url = 'www.google.com'
ie = Watir::IE.new()
begin</pre>
Timeout::timeout(30) do
 ie.goto(check_url)
 puts ie.check_for_http_error()
 end
rescue
 puts 'timed out'
end

This seemed to work when the page didn’t timeout, but for some reason it wasn’t catching the timeout. So I did a bit of digging and found out a rescue clause in ruby with no following class only catches exceptions of type StandardError, a subclass of Exception. So it wasn’t catching the Timeout::Error exception. The way to catch this exception is to always include the Exception clause, and to pass it to a variable such as ‘e’.

The final script looked something like:


require 'watir'

check_url = 'www.google.com'
ie = Watir::IE.new()
begin
 Timeout::timeout(30) do
 ie.goto(check_url)
 puts ie.check_for_http_error()
 end
rescue Exception => e
 puts 'timed out: '+e
end

In my research on Timeout::timeout I found this article that explains how it’s actually dangerous to use Timeout::timeout, but until I figure out a better solution it seems to work pretty well for me.