Automated Testing Tricks – Tickets to see Jimmy Fallon

Automated Testing Tricks is a series of posts that discusses fun things you can do with your automated testing tool that may not be directly considered automated testing.
“Hey, Hey Hey, Hey!” Would you like to go to a live taping of the Tonight Show with Jimmy Fallon? I sure did, and when my wife and I were given the opportunity to spend a long weekend in the Big Apple, we pounced on the chance to get tickets for the the show.
After doing some digging, I learned that tickets are free (Woo-Hoo!!) and distributed on a first-come, first-served basis online (Uh-oh.).
Like most people, I work long hours, coach youth sports, spend time with my family, etc. I’d have a better chance at bumping into Jimmy in a spinning class than getting tickets in a “first-come, first-served” contest.
So that got me thinking: is there some way that I could be alerted as soon as the tickets become available so that I can be one of the “first” without aimlessly clicking the Refresh button on their website over and over again?
Thankfully the answer is “Yes!”

How to get tickets

First things first. How do you get tickets for the Tonight Show online?
The Tonight Show has a reservation page where they list the dates that they’ll be filming over the next few months.
Main Page
If you click on any of the dates you’ll quickly realize that they’re all sold out. This is ultimately the result of not beating everyone to the front of the line for the “first-come, first-served” tickets.
sold out
But the good news for you is that they only release the filming dates a month or two in advance. Therefore, if you plan accordingly, you have a fair chance at getting tickets for dates that aren’t listed yet.

Use your Automated Testing Tool to alert you

There are a number of automated testing tools that you can use to test websites. My personal tool of choice is Tellurium, but you could use other tools like Selenium, HP, etc. The important thing is you’ll need to be able to schedule your test to run frequently and receive alerts when your test fails.
The first thing we need to determine is: what is it that we’re testing?
Since we’re looking for a particular date (ideally one that isn’t listed on the reservation site yet), we’ll want to create a test that checks to see whether that date appears on the page.

Creating your test

There are a few pieces to this test and we’ll walk through each one of them.
The first thing your test needs to do is navigate to the reservation page and check to see if your desired month is listed. This will most likely mean clicking the “Next” arrow to check for a future month.
Once your test finds the month that it’s looking for, you’ll want it to check for the specific date on the calendar. Thankfully the dates are links, so locating them via an automated test isn’t difficult.
If your test can click on your date, and the reservation drop-down menu appears, then your test should FAIL.
Why fail? Some testing tools will notify you whenever your test fails. In this case we WANT to be notified as soon as that drop-down menu is available. Therefore we need to trick our test into thinking that it’s failed so that it’ll notify us.

Personally, I was hoping to get tickets for June 27th. Using Tellurium, I created the following test:

For the url

If the text “May” is present

If the “Next” link is present

When the “Next” link is clicked

Once the text “June” is present

When the “27” link is clicked

If the “event_time” drop-down menu is present

Then fail this step


Then pass this step





Feel free to copy/paste that test into Tellurium and try it yourself. Simply replace “May” with the current month, “June” with your target month, and “27” with your target date.

Schedule your test to run automatically and notify you if it fails

Once you’ve created your test you need to schedule it to run automatically. Tellurium has a built in scheduler, but you could always create a cron job or use some other scheduling mechanism if you’re using another tool.
Ideally you want your test to run as frequently as possible so that you’re notified as soon as you can reserve tickets on the site. I set my frequency to every 5 minutes, but you could theoretically set it to run every minute.
Once you’ve scheduled your test, make sure that your testing tool notifies you if your test fails. Most tools have a mechanism to email you if and when critical tests fail.
And that’s it! If you set everything up correctly your test will automatically run every few minutes, checking the site to see if you can reserve tickets for your desired date.
Now you can sit back and wait for the email to arrive so that you can get your tickets before anyone else.
Have you used your automated testing tool to reserve tickets online? If so, share the details in the comments below.

Read More

What the World Cup can teach us about testing


Every 4 years the world comes together for the World Cup.  32 teams from all over the globe converge for the coveted title of the best in the beautiful game.

While watching some of the games it dawned on me that there are a lot of similarities between soccer and being a tester…

There’s a lot of pressure on you – like Brazil

Brazil is hosting the World Cup, and they’re also one of the favorites to win it.  That’s a lot of pressure on a team that, if they were playing in Europe, wouldn’t even be considered one of the top 5 teams in the tournament.


In Brazil’s first game they looked nervous.  You could feel the entire weight of the country bearing down on them, especially for the first 30 minutes.  They lacked creativity, their opponent was finding holes to exploit, and they collectively weren’t their best.

This is similar to when you take on a new testing project.  Management wants results right away, but where do you start?  You can’t test the entire application right away, just like you can’t win an entire soccer game in 5 minutes.

Brazil overcame their pressure by breaking the game down into small victories.  Step-by-step they started stringing together passes.  Then they got a boost by scoring a goal; it wasn’t a pretty goal (by Brazil standards), but it counted none-the-less.  Before you knew it their confidence had grown to the point where you could tell that they were in the driver’s seat and the game was theirs.

The same can be said about testing.  You can’t get overwhelmed by the enormity of a project.  Break it into smaller victories that will give you and management confidence moving forward.

You need to be methodical – like Germany

“Full coverage.”  Often times that’s the name of the game from management’s perspective.  They want to test every aspect of their application, leaving no area uncovered.

No team in the tournament personifies this mentality greater than the Germans.  A soccer field can be up to 120 yards long by 80 yards wide.  That’s a LOT of area to cover for the 11 players on the field.  Yet it seems that every time the opposition has the ball, Germany is right there to win it back.


In their first game, the Germans were up against Portugal and one of the best strikers in the world, Ronaldo.  Many thought that Ronaldo had a chance to score multiple goals against Germany’s aging defense.

But the Germans had a plan.  They very methodically spread themselves around the field, clogging the passing the lanes, and isolating Ronaldo so that he couldn’t receive the ball and attempt to score.

It wasn’t flashy, but they covered the field well, stuck to their plan, and ultimately ended up winning (4-0).

Same with testing.  When facing a threat, like a shortened testing period or invasive app changes, you need to come up with a plan and execute that plan methodically.  Figure out the most important areas that you need to cover and makes those a priority.

Only then will you be able to isolate your threat and increase your coverage elsewhere.

Creativity is king – like Argentina

Argentina have the blessing of playing with potentially the best player ever, Lionel Messi.  He’s minute in stature (5’7″, 150 lbs soaking wet), but he doesn’t let that stop him from being a force on the field.


Messi’s success comes from moments of brilliance, where he sees an opportunity and exploits it before anyone else realizes what’s going on.  Just when defenders think they know what’s coming, he turns the game on it’s head and does the complete opposite of expectations.

This is a vital component for any tester’s arsenal.  You can’t simply test what developers EXPECT you to test.  Sometimes you need to do the opposite and test what no one is expecting you (or your users) to do.  You never know what bugs are lurking just outside the normal workflow, and without some creativity and thinking outside the norm, you could miss potentially crippling bugs.

Be creative, and impress your peers with what you may find.

Never give up – like USA

You know what team no one wants to face in the World Cup?  USA.  You know why?  Because they NEVER give up.

USA is notorious for playing hard the entire game and always believing that they can win.  Look no further than their first game in 2014 for proof…

USA was fortunate enough to score 30 seconds into the game against a fast and punishing Ghana team.  They were riding high, until tragedy struck…

One of their best players, and their best scoring threat, suffered a hamstring injury and was carted off the field.  The immediate reaction was “We’re doomed”.

But the USA held on.

At half-time one of their starting defenders left the game with an injury, making way for a 21 year old kid to take his place.  “He’s too inexperienced.” “Ghana is going to tear him apart.”.

But once again, the USA worked as a team and held on.

Even their captain got kicked in the face and reportedly suffered a broken nose.

But you know what?  They stopped the bleeding, and despite having a hard time breathing, he and the team held on.

The crippling blow came with 10 minutes left when Ghana scored to tie the game, and you could tell that they were on the verge of scoring another.

Any other team would have conceded the tie, or even a loss, and point to too all of the adversity that they had to overcome.  But not USA.

With 3 minutes left in the game, the USA scored the game winning goal.  And it was off the head of none other than the 21 year old substitute.


Never. Give. Up.

As testers we’re constantly faced with blow after blow adversity.  “There’s not enough time to fully test features.”, “Management wants this pushed through regardless.”, “What do you mean you’re failing my code?  My code is just fine, what’s wrong with you?”.

Don’t ever allow yourself to get down from the adversity that you face.  You were hired to do a job, and you should do that job to the best of your abilities, no matter how much others may try to sway you otherwise.


Now go and prove to the world that you’re a world class tester with World Cup qualities.


Read More