Authors in Testing Q&A: Dorothy Graham Talks ‘Experiences of Test Automation’

Dorothy (Dot) Graham has been in software testing for 40 years, and is co-author of four books, including two on test automation (with Mark DG-photoFewster).

She was programme chair for EuroSTAR twice and is a popular speaker at international conferences. Dot has been on the boards of publications, conferences and qualifications in software testing. She was awarded the European Excellence Award in Software Testing in 1999 and the first ISTQB Excellence Award in 2012. You can visit her at her website.

In this Q&A, uTest spoke with Dot about her experiences in automation, its misconceptions, and some of her favorite stories from her most recent book which she co-authored, ‘Experiences of Test Automation: Case Studies of Software Test Automation.’ Stay tuned at the end of the interview for chapter excerpt previews of the book, along with an exclusive discount code to purchase.

uTest: Could you tell us a little more about the path that brought you to automation?

Dorothy Graham: That’s easy – by accident! My first job was at Bell Labs and I was hired as a programmer (my degrees were in Maths, there weren’t many computer courses back in the 1970s). I was put into a testing team for a system that processed signals from hydrophones, and my job was to write test execution and comparison utilities (as they were called then, not tools).

Continue Reading

Video Roundup: The Best of the Selenium Conference

The 2014 edition of the Selenium Conference in Bangalore, India, just wrapped up this weekend, bringing automation fans from around the world together for three days of workshops and networking.

While there’s sure to be some video rounded up soon for Selenium developers and automation enthusiasts who couldn’t make it this weekend (which we’ll share with our automation community), we’ve rounded up some of the great presentations from the 2013 edition of the show.

According to the Selenium Conference, the show is a volunteer-run, non-profit event presented by members of the Selenium Community. The goal of the conference is to bring together Selenium developers & enthusiasts from around the world to share ideas, socialize, and work together on advancing the present and future success of the project.

Beyond just automation, be sure to also check out uTest’s entire Events Calendar, your one stop for all events — virtual and live — covering the testing spectrum.

Simon Stewart, Selenium State of the Union

Continue Reading

New Testing Tools Added to uTest Include Those in Automation, Screen Mirroring

Thanks to our great community, over the past month at uTest, we’ve added more than 30 tools to our ever-expanding library of Software Testing Tools, including those in security, automation and even screen mirroring.

The Tool Reviews section of uTest is your one-stop shop to rate, review and discuss the tools that are supposed to make testers’ lives (hey, that’s you!) easier. Here’s just a small sampling of the tools being talked about by our community over the past 30 days:

Testomato Untitled13 Untitled16 TestFairy_MainUntitled12
uTest has designed Tool Reviews to be the place where testers can make educated decisions on the tools that may become a part of their daily routine, and to see which tools have won the hearts — or the ire — of their testing peers. If we’re ever missing your favorite test tool, be sure to submit it to us, and we’ll add it right away so you can leave the first review!

Focus on Automated Testing, Discount for uTesters at UCAAT

Automation is a sector of software testing that has experienced explosive growth and enterprise investment in recent years. The knowledge necessary to learn about and specialize in automated testing is found at industry events like the upcoming 2nd annual User Conference on Advanced Automated Testing (UCAAT) in Munich, Germany from September 16-18, 2014. ucaat

The European conference, jointly organized by the “Methods for Testing and Specification” (TC MTS) ETSI Technical Committee, QualityMinds, and German Testing Day, will focus exclusively on use cases and best practices for software and embedded testing automation.

The 2014 program will cover topics like agile test automation, model-based tests, test languages and methodologies, as well as web of service and use of test automation in various industries like automotive, medical technology, and security, to name a few. Noted participants in the opening session include Dr. Andrej Pietschker (Giesecke & Devrient), Professor Ina Schieferdecker (Free University of Berlin), Markus Becher (BMW), Dr. Heiko Englert (Siemens), and Dr. Alexander Pretschner (Technical University of Munich).

Continue Reading

Automation in Testing the Subject of Latest Engaging STP Podcast

uTest has always had a strong relationship with the Software Test Professionals (STP) community as attendees and sponsors of STP’s twice-a-year STPCon conferences in the US, some of the largest shows in the testing industry.

This week, STP brings us pre-recorded testing fun in the form of a podcast. Testing expert Richard Bradshaw talks with STP on the subject of automation in testing. Specifically, Richard gets into where automation comes into play as a manual tester, and how managers can build successful teams comprised of developers and both manual and automated testers, and keep everything running smoothly.

Check out the full audio of the great STP interview below.

Learn the Basics of Selenium at uTest University

Selenium is a free, open source suite of tools to automate web browsers across many platforms. Selenium is popular among testers as a  powerful and robust automation testing tool.
selenium-logo

You can now learn the basics of Selenium through this 8-part course at uTest University (uTu) authored by Alex Siminiuc:

You can also easily add the series to your To-Do List by going to the course tracks page and selecting the Selenium Basics track.

If you’re already using Selenium, be sure to rate and review this tool in our Tool Reviews section so that other testers in the community will know what you love (or don’t love) about it.

uTu is free for all members of the uTest Community. We are constantly adding to our course catalog to keep you educated on the latest topics and trends. If you are an expert in UX, load & performance, security, or mobile testing, you can share your expertise with the community by authoring a uTu course. Contact the team at university@utest.com for more information.

How Learning Swimming is Like Learning Test Automation

I started learning how to swim last fall.Daniel Bell (AUS) action reflections Swimming 2000 Sydney PG

My interest in it began while watching some people swimming on lanes in an outdoor pool.  What those people were doing was amazing, gliding through water slowly, efficiently, effortlessly and very quietly, making it look so easy, simple and beautiful. So easy and simple that anyone may think that they can do it by themselves.

So I started learning. How difficult could it be to move your arms and legs in the water?

I realized shortly that I either didn’t do it properly or I didn’t understand how they do it. I persevered though and continued by practicing after watching a swimming training DVD. From the DVD, I learned that swimming is actually quite complicated as it consists of individual movements that need to be done in a well-coordinated way. To swim well, I needed to understand how to rotate the body in the water, how to breathe, how to synchronize the strokes with breathing, and how to move my legs. Some of these things, especially breathing, are very difficult to achieve by yourself.

My swimming got a bit better, but very soon I stopped making progress. So I hired a private instructor. This time, I committed money and time and worked towards my goal. After three months of practicing drills, repeating the same thing again and again, being frustrated by doing it well, I finally started to make progress. I am currently at the point where I have the skills for swimming short distances and can move to the next phase of training.

So what is the connection between learning test automation and swimming?

Test automation seems easy, especially when looking at other people doing it or when reading articles written by test automation tool vendors. How difficult can it be to record a script by using a site and then playing the script back?

So you try it by yourself first. Soon, you realize how limited this way of “test automation” is and how little you can do with it. So you persevere and learn about the need for a programming language. You read a programming book, learn some concepts and then come back to the test automation project.

But just a programming language and a tool for recording scripts is again not sufficient. Reading more about test automation, you learn about other concepts like XPATH, browser DOM, code debugging, abstract layers, JUNIT, code refactoring, coding patterns, test driven development…the list goes on.

But the swimming (I mean, test automation) was supposed to be easy!

Continue Reading

Testing the Limits with Ben Kelly

Ben KellyBen Kelly has literally tested around the world. His career has taken him to Australia, Japan and the UK and Ben is currently a Software Engineer in Test for eBay. A regular presenter at conferences in the US and Europe, Ben also blogs at TestJutsu (when he has a spare moment).

In this month’s Testing the Limits interview, Ben discusses his testing experiences, his passion for exploratory testing, advice for new testers and his ultimate dream for the testing profession.

*****

uTest: So, how did you become a software tester and what drew you to this field?

Ben Kelly: It should have been obvious to me in my youth. I had a habit of taking stuff apart to see how it worked. That coupled with my tendency toward dark humour and pessimism should have been a clue. I wish I’d known earlier that testing was a possible vocation.

Like many others, I fell into the field accidentally. In my case, I wanted to be a programmer. I was an okay coder, but no company seems to want ‘okay’ out of university. They want propeller hats, pocket protectors, coke-bottle glasses and social ineptitude. A friend suggested testing as a way of bridging into a programming role. I gave it a shot and then discovered that I was much more successful at finding out ways that stuff does what it shouldn’t than making it do what it should. I also enjoyed it a lot more.

You’re a big proponent of exploratory testing. What draws you to that style and why do you think it’s a good approach?

BK: All testing is exploratory to some degree. Even in the case where you have heavily prescribed test steps, there is still room for interpretation. There are often multiple ways of performing a certain action. There are cases where you will notice potentially interesting things that are not completely relevant to what you’re testing. It’s up to you as a skilled tester how you act in those situations. You could choose simply to ignore it and follow your script. You could also be a robot made entirely of meat.

I’m not against test scripts or documentation. I’m against following rules over applying skill. When you’re given the freedom to do your job as a skilled knowledge worker, it’s much easier to avoid regularly abused and frequently meaningless metrics like bug counts and test case completion percentages and instead to focus on finding information that is important to the people you serve.

Since you’re a manual, exploratory tester, what are your feelings on test automation?

BK: Test automation and I are not strangers. I don’t see automation as a dichotomy of ‘automation vs. manual.’ Automation in its many forms serves to augment testing and/or programming to some degree whether it be a throwaway script, a heavy-duty test framework or something else.

Automation should solve a problem. Much like any other software development effort, you want to know what problem you’re solving and which tool is right for the job. Testing is testing. It’s the thought behind the effort that makes it good or bad. Throwing GUI automation at every problem because that’s all you know is ignorant at best. Mandating things like percentage of manual test cases to be automated is stupid. If you’re automating without understanding why, then the tail is wagging the dog. If you’re automating in the hope of doing away with sapient manual testing then you’re doing it wrong.

 You’ve worked for companies literally around the world. Do you see different approaches or attitudes toward testing in different countries?

BK: Not really. I see stereotypes more in terms of industry, company size and individual company culture rather than a country-specific attitude. Behavior is driven by what is rewarded. Companies that value commoditization of testing and protecting the bottom line will get very different testers to those that value skilled knowledge work. That seems to be true no matter what country you’re in.

eBay is one of the top names on the online retail world – not to mention one of the first in the space. How does eBay approach software testing?

Continue Reading

Robots Can’t Replace Human Software Testers, Right?

“We need to let robots take over. They will do jobs we have been doing, and do them much better than we can. They will do jobs we can’t do at all. They will do jobs we never imagined even needed to be done. And they will help us discover new jobs for ourselves, new tasks that expand who we are. They will let us focus on becoming more human than we were.” – Kevin Kelly, Wired

*******

Should you worry about robots becoming self-aware and rising up to enslave humanity? Probably not. Should you be worried about a robot one day taking your job? Depending on the trade you’re in, the answer to that question might very well be “yes.”

Yesterday, Wired ran a great feature piece on Why Robots Will – And Must – Take Our Jobs, in which they argue that we shouldn’t be worried about such a thing happening, but rather we should welcome it. Here’s why they are (partly) right:

It’s hard to believe you’d have an economy at all if you gave pink slips to more than half the labor force. But that—in slow motion—is what the industrial revolution did to the workforce of the early 19th century. Two hundred years ago, 70 percent of American workers lived on the farm. Today automation has eliminated all but 1 percent of their jobs, replacing them (and their work animals) with machines. But the displaced workers did not sit idle. Instead, automation created hundreds of millions of jobs in entirely new fields. Those who once farmed were now manning the legions of factories that churned out farm equipment, cars, and other industrial products. Since then, wave upon wave of new occupations have arrived—appliance repairman, offset printer, food chemist, photographer, web designer—each building on previous automation. Today, the vast majority of us are doing jobs that no farmer from the 1800s could have imagined.

It may be hard to believe, but before the end of this century, 70 percent of today’s occupations will likewise be replaced by automation. Yes, dear reader, even you will have your job taken away by machines. In other words, robot replacement is just a matter of time. This upheaval is being led by a second wave of automation, one that is centered on artificial cognition, cheap sensors, machine learning, and distributed smarts. This deep automation will touch all jobs, from manual labor to knowledge work.

But do you fall into that 70% category, dear human software tester? Good question, right?

Continue Reading

Tips on Implementing Google’s Robot Framework 2.7.4

With the release of Google’s Robot Framework 2.7.4, countless software testers have been asking questions about this tool. From what it is and how to implement it, to reasons for using it, there is much discussion surrounding this new framework.

So, what is it?

“Robot Framework is a generic test automation framework for acceptance testing and acceptance test-driven development (ATDD). It has easy-to-use tabular test data syntax and utilizes the keyword-driven testing approach. Its testing capabilities can be extended by test libraries implemented either with Python or Java, and users can create new keywords from existing ones using the same syntax that is used for creating test cases.” http://code.google.com/p/robotframework/

How do you implement it?

There are many different libraries to implement with Robot Framework. One of the most common is the Selenium Library. Brian Rock, one of our gold rates automation testers, took the time to share with us best practices for using Selenium 2 Library with Robot Framework.

Check out the recording below and feel free to join the conversation on our forums!