WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
The Testing Planet - July 2010
1. THE TESTING PLANET
July 2010 www.softwaretestingclub.com No: 2 £5
Yes, It’s Personal
How to build healthy relationships with different job functions and team members pages 10-11
An Introduction to
Test Automation Design
By Lisa Crispin examples of desired software be-
There’s no shortage of excel- havior. Now they’re between a rock
lent test automation tools available and a hard place: regression testing
today. Many are open source, so the manually takes too long, and so does
up-front cost is low. Some come keeping the automated tests up to
with script capture tools or mini- date as the production code changes.
IDEs that speed the learning curve. In my experience, this quandary
Many have excellent user guides, is usually the result of poor automat-
tutorials and screencasts avail- ed test design. Automated test code
able to help testers and teams learn is, well, code. It requires the same
them. thoughtful design as production
code. By applying coding principles
such as “Don’t Repeat Yourself”,
The problem anytime we need to update a test
to accommodate production code
One would think that with all changes, we only have to change
this tools and help available, test one module, class, include or macro,
automation efforts would be more perhaps only a variable value.
likely to succeed than in years past. Unfortunately, test automation
However, what I see all too often is often done by testers who don’t
are teams who had no trouble creat- have much, if any, programming
ing thousands of automated regres- experience. They may be capable
sion tests – the problem comes a of capturing scripts with a tool and
few months down the road, when replaying them, but this is only a
they spend most of their time main- way to learn a tool, not a way to
taining the automated tests. These design real tests. The programmers
testers are left with very little time on their projects may feel their job
with critical testing activities such is to write production code, not help Unfortunately, test automation is often done by testers
as exploratory testing or collaborat- with functional or GUI test automa- who don’t have much, if any, programming experience.
ing with customers up-front to get tion. So, the testers do their best, and
IN THE NEWS
Daily Testing Tips Weekend Testing fun Yes, It's Personal Context Driven Jumping Testing & Creativity
Tuesday has become one of my Weekend Testing provides the “I don't want your testers in Once upon a time, a herd of sheep The creativity is needed both when
favourite days of the week because opportunity to learn new testing meetings with my team members. were grazing in green fields in the generating test ideas outside
it’s when testers from around the approaches in a safe environment They will be disruptive and then countryside. There was a fence explicit
globe start posting their valuable away from daily work, project use information they hear to make along the field’s border to restrict requirements, and when finding the
and insightful software testing tips schedule pressures and software us look bad. Keep them away from the sheep from crossing over to the effective methods for running
on twitter. being thrown over the wall. us.” other side. important tests.
Continued Page 6 Continued Page 13 Continued Page 10 Continued Page 20 Continued Page 17
2. 2 July 2010 www.softwaretestingclub.com Use #testingclub hashtag
end up with half a million lines with object-oriented programming. If you’re experi-
of captured scripts (yes, I know enced with these tools, you may find lots of faults with
of more than one example) that possible solutions my test code. But I wanted to demonstrate that these
are impossible to maintain. design principles work even when you’re unfamiliar
Even if teams use a frame- A simple solution is for experienced programmers to with your tool or scripting language.
work that allows non-program- pair with testers to automate tests. At minimum, teams
ming members to write tests in need to hire testers with solid code design skills to help If you want to play with similar examples, you can
plain English, a spreadsheet or the non-programmer testers. Testers need training in basic download the following:
some other non-programming design principles and patterns.
language, the test cases still need There are lots of resources to learn how to do a particu- Information and downloads to install Robot Frame-
proper design. I personally have lar type of automation, such as GUI test automation. My work:
made a terrible mess automating personal mission is to find ways to help educate testers in http://code.google.com/p/Robot Framework/wiki/
dozens of FitNesse tests where designing maintainable tests. As a start, I’d like to illus- Installation
I repeated the same steps over trate some basic design principles using examples written
and over, because I didn’t know in Robot Framework with Selenium driving GUI tests. I Robot Framework Selenium Library downloads,
at the time about the !include had not used either Robot Framework or Selenium before including the demo: http://code.google.com/p/Robot
feature of FitNesse. when I sat down to create these examples. And while I’ve Framework-seleniumlibrary/
been automating tests for a long time, I’m not too good
Look up Selenium commands here:
http://code.google.com/p/Robot Framework-seleni-
umlibrary/wiki/LibraryDocumentation
Run tests with” ./rundemo.py <test file name>”
To start the server for the app under test manually,
type “python httpserver.py start”
Example One
We’re testing account validation on a web app login
page. Our first test will open a browser, go to the main
page, and check the title. Then it will type in a correct
username and password, click login, verify that the title
is “Welcome Page”, and that the page contains the text
“Login succeeded”. (Note: I’d start even more simply
in real life – just open the browser for starters. But I
have to try to keep this article a manageable length.)
The following is from my test, which is in a .txt file
in real life (Robot Framework tests can be plain text or
HTML). The asterisks on the section names must start
in column 1. There are two spaces between the Seleni-
um keywords such as ‘input text’, and the data or argu-
ments used such as the field name ‘username_field’ and
the value ‘demo’. The “Test Cases” section includes all
our test cases. The “Settings” section allows the test to
access the correct libraries, and does tidying up.
*** Test Cases ***
Test Login
open browser http://127.0.0.1:7272 firefox
title should be Login Page
input text username_field demo
input text password_field mode
Click Button login_button
Title should be Welcome Page
Page should contain Login succeeded
*** Settings ***
AUTOMATION Library SeleniumLibrary
Test Teardown close browser
Blog post: New to Testing? : http://bit.ly/cL7P4E
3. Follow us at www.twitter.com/testingclub 3
Title should be Welcome Page
Example Two
Page should contain Login succeeded
Cool, we tested that a valid username and password can log in. But we
*** Settings ***
have lots of test cases to cover. Valid and invalid combinations of user-
Library SeleniumLibrary
names and passwords, empty ones, special characters, too-long and too-
Test Teardown close browser
short ones, and more. Repeating the test above over and over with hard-
coded values would get out of control pretty quickly. Plus, we want to test
*** Variable ***
in multiple browsers and possibly test multiple servers.
${LOGIN PAGE} http://localhost:7272
When we see duplication, we always want to extract it out. Good test
${BROWSER} firefox
tools give you a way to do this. Robot Framework provides the concept
of “keywords”. For example, we can use a keyword that navigates to the
This test is still sort of end-to-end-y, in that it first does the invalid
login page, a keyword to type in the username, and so on.
case, then the valid one, then logs out. It’s a step in the right direction. If
Here’s a first step towards extracting out duplication in our simple test.
the name of the password field in the HTML changes, we only have to
We have two test cases: “invalid account”, which tests an invalid user-
change it in one place. Same thing if the text of the invalid login error
name and password and verifies the error message, and “valid account”,
message changes.
which logs in with a valid username/password combination and verifies
the landing page. We’ve put the values for browser and server into vari-
ables. We’ve defined keywords for actions such as typing in the username Example Three
and password, clicking the submit button, and verifying the messages.
It’d be nicer if we could just run the test with whatever username and
*** Test Cases *** password that we want to try, and check for the appropriate error message.
One way to do this is by passing in variable values with command line
invalid account arguments. We’ve refactored the test to expect variables to be passed in.
navigate to the login page We also separated out verifying the title and verifying the message,
type in username invalid
type in password xxx *** Test Cases ***
click submit
verify the invalid account message login account
navigate to the login page
valid account type in username ${username}
navigate to the login page type in password ${password}
type in username demo click submit
type in password mode verify the title
click submit verify the message
verify the valid account message
click logout *** Keywords ***
*** Keywords *** navigate to the login page
open browser ${LOGIN PAGE} ${BROWSER}
type in username [Arguments] ${username} title should be Login Page
input text username_field ${username} ${title} = Get Title
should start with ${title} Login
type in password [Arguments] ${password}
input text password_field ${password} type in username [Arguments] ${username}
input text username_field ${username}
navigate to the login page
log hello, world! type in password [Arguments] ${password}
open browser ${LOGIN PAGE} ${BROWSER} input text password_field ${password}
title should be Login Page
click submit
click submit Click Button login_button
Click Button login_button
click logout
click logout Click Link logout
Click Link logout
verify the title
verify the invalid account message Title should be ${title}
Title should be Error Page
Page should contain Invalid user name and/or password verify the message
Page should contain ${message}
verify the valid account message
A passing automated test does not always mean the underlying code is working. #dttip by @cowboytesting
4. 4 July 2010 www.softwaretestingclub.com Use #testingclub hashtag
*** Settings ***
Example Four
Library SeleniumLibrary
There’s still a lot going on in one test file. It would be nice if each of
Test Teardown close browser
our keywords could be in its own little file. Good test tools allow this, and
Robot Framework’s implementation is called a ‘resource’.
*** Variable ***
For example, we could take “Navigate to login page” and put it in a
${LOGIN PAGE} http://localhost:7272
separate text file called “navigate_to_login.txt”
${BROWSER} firefox
*** Keywords ***
We can supply the variable values from the command line:
navigate to the login page
./runDemo.py --variable username:demo --variable password:mode
open browser ${LOGIN PAGE} ${BROWSER}
--variable message:‘Login Succeeded’ --variable title:’Welcome Page’
title should be Login Page
demo_test2.txt
${title} = Get Title
should start with ${title} Login
I can easily visualize cranking a lot of username, password and mes-
sage value combinations through this script. I could write a script to do
Now we can simply refer to this file whenever we want to navigate to
this so I don’t have to type them myself. My team uses a similar technique
the login page in a test. In Robot Framework, we do this in the “Settings”
to test many combinations of data values with our Watir scripts. Different
section. Notice I also added some Documentation there.
tool, same concept.
It turns out that in Robot Framework, running the test multiple times by
*** Settings ***
passing in variables from the command line would be inefficient, because
Selenium would start the browser up new each time. But this can be a
Documentation Test account validation
good approach with other tools, and works well in Robot Framework for
running the same test with different browsers (see http://robotframework-
Resource navigate_to_login.txt
seleniumlibrary.googlecode.com/hg/demo/login_tests/invalid_login.txt for
an example of this). Also, passing variables from the command line can be
*** Test Cases ***
a powerful way to leverage automated tests to set up scenarios for manual
exploratory testing.
login account
Notice that I also split out the ‘verify title’ and ‘verify message’ test
navigate to the login page
cases. That’s a personal preference; I find that if my tests are more granu-
type in username ${username}
lar, it’s easier to debug problems with the test itself. I didn’t pass in the
type in password ${password}
login page or browser values, but I could.
click submit
verify the title
verify the message
We're Hiring
Test Engineers
a
Brief
Histor Y
OF
Time
French Edition
redgate
a community for software testers
www.softwaretestingclub.com
Timebox the search for bugs or replicating bugs. Use heuristics to help. We can prove the existence of bugs but not their absence.
#dttip by @ThomasPonnet
5. Follow us at www.twitter.com/testingclub 5
The Keywords section looks the same as before, except with the ‘navi- because there’s a regression bug.
gate to the login page’ keyword removed. If you’ve read this far, you must be eager to learn more about test auto-
If we’re testing a web application, we’re bound to have lots of tests that mation design. Ask a programmer on your team to pair with you to automate
need to navigate to the login page. Now this functionality is encapsulated some tests, so you can learn some new techniques.
into one little file. Whenever something about navigating to the login page Work through a good book such as Everyday Scripting with Ruby by
is changed, we only need to update one file, and all the tests that use it will Brian Marick.
still be able to do the navigation. We’d want to do something similar with
the login account, so that our many GUI tests can simply include the login
search Out Blog posts and articles.
file in their Resource sections.
Dale Emery has an excellent paper on Writing Maintainable Automated
Design For Maintainability Acceptance Tests at http://dhemery.com/pdf/writing_maintainable_auto-
mated_acceptance_tests.pdf.
I’ve only scratched the surface of test automation design principles. Your team can successfully automate regression tests. You’ll need to
I didn’t even get into patterns, such as “Build-Operate-Check”, where invest some time and effort to experiment and learn the best approach. It’s
we build our test data, operate on it, verify the results, and then clean up a journey, but an enjoyable one. Once you get on the right road, you’ll have
the data so the test can be rerun. But I hope I’m getting across my point: time for the other essential testing tasks you need to create a product your
successful test automation requires good design skills, and they can be customers love.
learned without too much pain.
I’m no expert at object-oriented design. My programming experience
is in structured and interpreted languages, and with proprietary C-like test
automation tool languages. The only OO scripting I’ve done is with Ruby,
but I was able to succeed because my fellow tester was a Perl programmer about author
and all my programmer teammates are willing to help too.
I’ve shown you some simplistic examples of how I personally would Co-author with Janet Gregory,
start extracting duplication out of a test script and start forming a library _Agile Testing: A Practical Guide
of basic test modules, like navigating to the login page and login. We for Testers and Agile Teams_
could have modules for verifying HTML page titles, text, messages and (Addison-Wesley 2009)
elements, using variables for the names and values. Contributor to _Beautiful Test-
These concepts aren’t easy to learn, but the investment pays off. My ing_ (O’Reilly 2009)
team and I have spent lots of time over the years refactoring the early tests http://lisacrispin.com
I wrote in FitNesse and Canoo WebTest, because I made design mistakes @lisacrispin on Twitter
or was ignorant of the tools’ helpful features (and I had been automating
tests reasonably successfully for at least a decade prior!) As a result of
constantly learning, refactoring and improving, we’re able to automate
100% of our regression testing without a heavy maintenance burden, and
our tests have a high return on investment. When they fail, it’s usually
Getting a daily dose of
Testing Tips
By annE-MariE CharrETT I soon discovered that it’s quite
a challenge to write a daily tip in
Tuesday has become one of my less than 140 characters and so I put
favourite days of the week because a call out from volunteers. Those
it’s when testers from around the who heard the early call were Ajay
globe start posting their valuable Balamurugadas, Matt Heusser, Rob
and insightful software testing tips Lambert and Trish Khoo.
on twitter. I’m truly astounded by Many other testers offered to
the depth and quality of these tips. contribute too, so to make it fair, 4
Daily Testing Tip came about testers now contribute once a week
last year as an extension to the for six weeks.
Quick Testing Tips website which I At the moment I have the fabulous
had been contributing weekly posts Selena Delesie, Ajay Balamuruga-
to. I thought that this idea would das, Catalin Anastasoaie and Joel
work well with twitter too, and so Montvelisky contributing a tip once a
Daily Testing Tips was born. I now week. A big thanks to these testers as
have over 500 followers and that I know it can be hard work to think
number grows daily. up a tip, even if its once a week.
Blog post: Anatomy of a Good Test : http://bit.ly/dAvuhX
6. 6 July 2010 www.softwaretestingclub.com Use #testingclub hashtag
Testing Tips
"Think of your testing notes as a Whole team, not only testers, Learn to be diplomatic, you It's not about the test, it's about
flight data recorder. We crack them needs to take resp. for quality, want the bug to be resolved, the result - seek and provide
open if something goes wrong." testing. "it takes a village". not to prove you are right. actionable, referenceable
@jbtestpilot #testing #qa #dttip #dttip by @lisacrispin #dttip by @gunjans information. #dttip by
(@lisacrispin) @bradjohnsonsv (Brad Johnson)
Hold your test and automation Instead of talking about costs in Testing ideas may come to you Sometimes you have to
code to the same standards as testing, start think about at the weirdiest times, keep a poke the code with a sharp
you hold the product code. It is investments, donʼt translate notebook handy to write them stick to find out where it bleeds.
your product. #dttip by value in cost, was it worth down & use them later. #dttip #dttip by @artofsqa (Troy
@cowboytesting investing #dttip by @JeroenRo by @joelmonte (Joel Montvelisky) Hoffman)
(Curtis Stuehrenberg) (Jeroen Rosink)
One thing that science has Automated tests should never 'Ever tried, Ever failed, No matter. Use typewith.me to collaborate with
taught us some bugs are hard be used as a show off to Try again, Fail again, Fail Better' other testers while pair testing or
to find but perseverance pays off managers. They might think it's Samuel Beckett - thought testers even with programmers, #dttip
in the end. donʼt give up. #dttip by easy and useful to automate might like it #dttip by @esconfs by @sdhanasekar (Dhanasekar S)
@mpkhosla (Mohinder Khosla) everything. #dttip by @knorrium (EuroSTAR Conferences)
(Felipe Knorr Kuhn)
#dttip the sheer repetition of Just because you've counted all the Find all users in a system, not As lastactivity for today,
automated test steps makes subtle trees doesn't mean you've seen the only the ones that people want start with a short preparation
errors more visible e.g. when the forest #dttip by @TestSideStory to know about. That includes for the next day #dttip by
system counts complex actions (Zeger Van Hese) disgruntled employee and @JeroenRo (Jeroen Rosink)
incorrectly by @chris_mcmahon hacker. #dttip by @Thomas
(Chris McMahon) Ponnet (Thomas Ponnet)
Assume nothing. Question if you want to study the "effect" If you test on Windows Vista or draw pictures of the software you
everything. Trust no one #dttip by of something, try removing it and 7 be sure to turn on the 'All are planning to test; the pictures
@cartoontester see how the system behaves CPU Meter' windows gadget. will help you think about it
#dttip by @shrinik (Shrini Kulkarni) #dttip by @can_test differently than the designer
(Paul Carvalho) did #dttip by @AlanMyrvold
(Alan Myrvold)
It’s a great experience to post a and summed up by Markus Gärtner willingness of the software testing
daily testing tip to the community in a tip the next day: community to help each other out.
and all testers are welcome to do “I think tester’s blew the weekly I’m proud to be part of that.
so. testing tip in a collaborative load Also, the beauty of #dttip is that
about author
So if there are any testers out testing session on this #dttip hashtag. your tip can really help out a tester
there who want to try their hand out All after just 3 weeks :)” anywhere in the world. An encour-
Anne-Marie Charrett is a
at writing a daily testing tip for six Tester had fun voting for their aging tip can help a tester refocus
professional software tester and
weeks, send me an email at daily- favourite tip in a poll I had on the or validate their own thoughts in a
runs her own company,Testing
testingtip@gmail.com with a short daily testing tip website but when very practical way.
Times [http://www.testingtimes.
bio indicating why you want to the tips started getting too many I I’ve collated a list of tips that for
ie/]. An electronic engineer by
contribute. It’s that easy! had to stop that. me stand out (they are in no partic-
trade, software testing chose her
I think the success of #dttip is a ular order), I’m sure you have your
when in 1990 she started confor-
demonstration of the strength and own favourites.
mance testing against European
Tag Tuesday and If you want to post a tip on Tag
standards. She was hooked and
#dttip on Twitter was an Tuesday, you will need a twitter
has been testing since then. She
idea from the wonderful account. When you write a tweet,
enjoys working with innovative
just add #dttip to it anywhere in
rosie sherry. and creative people, which has
the message. If you want to follow
led her to specialise working for
all the tips, you can either do so at
She thought it might be fun to start-ups and incubators. She’s a
http://dailytestingtip.com or use
have a day where anyone could keen blogger and hosts her own
the feed http://search.twitter.com/
share a tip on Twitter using the blog, called Maverick Tester.
search?q=%23dttip
hashtag of #dttip. [ http://mavericktester.com/]
Again, thanks to everyone who
The record so far was 117 tips in contributes to making Tag Tuesdays
one day which was truly amazing so much fun.
You know the movie Zombieland? There is a rule: Double Tap! Works for testing perfectly... by @Skarlso
7. Follow us at www.twitter.com/testingclub 7
organization where Mr. Smit- They were smart this time around
The Managing Tester ten worked was business savvy.
They decided not to hire another
manager. Their question was “Do
though. They did not ask Smitten
about the new role. They dumped
that role on him instead. Mr. Smit-
reached the office. Unlike other we really need a test manager?” ten did not get a chance to say
pariMaLa shankaraiah days, there was a flurry of activity Mr. Smitten wondered why this “No” as he was never asked in the
Once upon a time, there was in the office. Several managers were question never came up when the first place.
a man called Mr. Smitten who running around conference rooms previous manager was doing an Mr. Smitten was anointed as the
was smitten by testing. His daily with ”long” faces. outstanding job. The plan was to new lead for the test team and took
struggle to be a better tester kept The first thought that struck Smit- assign Mr. Clever as the team lead over the remnants left over by the
him alive and kicking with enthusi- ten was “Is another wicket* down?”, as he was the next most senior highly talented outgoing manager.
asm. Whenever he learnt something “Oh No! Not again”. person. Initially he only concerned himself
new and implemented it he would He then got wind that the test They thought that in addition to with filling the gaps left over by the
discover that there is still something manager had resigned for better testing, Mr. Clever would lead the previous manager. He had enough
else to learn. He understood that prospects elsewhere. The test team team for no extra cost. So he would challenges already to learn and try
“Learning is an Ocean” and started felt as if it was orphaned forever. work 150% instead of 100%. Sadly, new ideas in testing.
savoring it drop by drop even if it Here was a test manager who really Clever being very clever rejected However he now had to attend
would take a lifetime. He seemed to cared and fought for the team. He the offer outright saying he did lots of tiresome meetings, interact
be content with his learning strat- supported and protected the team not like people management. They with other managers and prepare
egy. through thick and thin and now he were disappointed with Mr. Clever reports as and when upper man-
One fine Monday morning, Mr. had quit. It was a big jolt, especially and decided not to promote him to agement told him to do so. Why?
Smitten woke up to pouring rain given the series of resignations by the next level and now placed their Because he was now a manager!
and set off to go to work. He got managers in recent history. hope on Mr. Smitten who had great Smitten thought he was helpless.
ready, beat the morning traffic and The senior management of the people and communication skills. Week 1 - 20 hours spent in meet-
18th Annual European Software Testing Conference
COPENHAGEN
20 10 DENMARK
29 November - 02 December 2010
• 5 Keynotes Keynote Speakers
• 12 Tutorials
• 46 Track Sessions Putting Tradition to the Test: The Evolving Role of the Tester
• Hands on Test Lab Antony Marcano, RiverGlide, UK
• Workshops
• Test Tools & Services Monty Python’s Flying Test Lab
Expo Rob Sabourin, AmiBug.com, Canada
• Gala Awards Night
& much more… When Passion Obscures The Facts: The Case for Evidence-Based Testing
Stuart Reid, Testing Solutions Group, UK
REGISTER ONLINE NOW
For The Love Of The Game
Dino Patti, PLAYDEAD ApS, Denmark
Session Topics Include...
Agile Testing - Automation – Test
Management – SCRUM – Test
Moving Beyond The Status Quo – Differentiating Ourselves and
Estimation – PEOPLE SKILLS Demonstrating Value
– Risk Based Testing – Mobile Bob Galen, iContact, USA
Testing – Practical Case Studies
– Building test teams - Model
Based Testing – Test Environments EuroSTAR Online Community - Access the Webinar Archive, Past Conference Materials, Testing
– Metrics – TMMI – TPI – Process Forum, Articles, Newsletter Archive & more... Interact, engage & learn from the test community.
Improvement – LEADERSHIP &
much more… w w w. e u r o s t a r c o n f e r e n c e s . c o m
A developer should never test their own software." http://bit.ly/acwzK1 #SoftwareTesting by @teknologika
8. 8 July 2010 www.softwaretestingclub.com Use #testingclub hashtag
ings, 10 hrs for reporting and 10 devote more time to his learning him? Or make him a scapegoat like personal level from each individual,
hrs for testing. There was a major related tasks. He was expected to he thought they had? their freedom is constricted due
release, so he ended up stretching know everything about anything that Would he be forced to remain in to organizational hierarchies and
on weekdays and over-stretched on every team member did. He had cur- the same role, go back to his previ- infrastructure. This in turn will
weekends. sory knowledge of most things, but ous tester role or laid off for not have profound impact on people’s
Week 2 – 15 hrs meetings, 5 hrs no deeper technical details. He did towing the company line? motivation.
reporting, 40 hrs testing (stretch- not have time to get to the technical Did Mr. Smitten do the right Passionate testers may reject
ing). level. thing? Of course he did. No matter managerial roles not because they
Week 3 – 15 hrs meetings, 5 He stopped reading technical the outcome he knew inside that he lack people skills, but because
hrs reporting, 20 hrs testing (No stuff. He stopped reading testing had stood up they don’t want
stretching). After all, no one can websites and blogs. He stopped for his pas- passionate testers may reject to be a manager.
stretch forever. writing about testing. He stopped sion. He had managerial roles not because Instead of penal-
Mr. Smitten saw his manag- exploring. He stopped fighting back. spoken out. He they lack people skills, but izing them for
ing job eating up his testing time He became disillusioned. He was had spoken the lack of managerial
because they don’t want to
which could severely impact the no longer the same man smitten by truth. skills, it would be
upcoming release. When he raised testing. He started getting a feeling Vipul be a manager. good to motivate
a red flag, the powers that be asked that he was neither a good tester nor Kocher (Co them to work on
him why he was not delegating his a good team lead. His motivation President , PureTesting) once said their technical and testing skills. In
testing work. Smitten loved to test, started to sink. “If you scare a crawling baby by fact, it’s a great investment strat-
not to manage or delegate. He was What did Mr. Smitten do? He yelling ‘walk’, ‘walk’, ‘walk’, the egy to encourage passionate testers
asked to manage fulltime which spoke to his manager the very next baby will stop crawling - forget because there are very few really
he did not enjoy. He understood day saying he couldn’t work this about walking”. This sounds so true great testers. We need more of
that management was a new arena way anymore. He was not inter- for testers. them.
for him to learn and experience, ested in a management role. He was If there are many passionate tes- How many testers have you met
but that is not where Mr. Smitten’s interested in testing which he was ters in the team who opt to test ver- who say they have ~20 plus years
passion was. His heart belonged to now unable to do. He felt that he sus managing teams, it’s not right of experience in testing alone. One,
testing. He did not love manage- was becoming a failure figure in the to force them into managerial roles two, three, ten? Just a handful. Let
ment as much as testing. team. He poured his heart out. He as a need arises. At the same time, testers grow in numbers. Let testers
Over a period of time, Mr. Smit- spoke the truth. if people are interested in manage- grow in expertise. Let’s hope for a
ten became unhappy. Though he His manager took a while to think ment, but forced to test, they may better testing world. Let’s encour-
learned to balance management about what has happened. Did they not do a good job either. Though age passionate testers.
and testing, it was hard for him to do Mr. Smitten a favor promoting such decisions have to come at a Don’t sulk as a managing tester.
Rejoice as a testing Tester!
references
Wicket is an Indian word used by
cricket fans to refer to someone
quitting the organization.
about author
Parimala Shankaraiah is one
of the co-founders of Weekend
Testing and works at Consona,
Bangalore as a senior tester in the
weekdays. She handles Public
Relations at Weekend testing. She
also co-facilitates testing ses-
sions for Bangalore chapter. She
authors a blog http://curioustester.
blogspot.com/ where she writes
about her testing experiences.
She can be contacted atparimala.
shankaraiah@gmail.com.
Don't 'spy' on your testers. Monitor their work to learn how YOU can help them perform better. by @testuff
9. Follow us at www.twitter.com/testingclub 9
Software Test Professional
I am the very model of a software Test Professional,
I've information computational, logical, informational,
I know the current thinking, and I type in codes commercial,
From COBAL to Javascript, in order categorical;
I'm very well acquainted, too, with problems mathematical,
I boundary test equations, using latest testing oracles,
About probability distributions I'm teeming with a lot o' news,
With many cheerful tests for the square of the hypotenuse.
I'm very good at identifying behaviour anomalous;
My defects address issues, the sublime and the ridiculous:
In short, in testing behavioral, functional and structural,
I am the very model of a Software Test Professional,
I execute my tests, both the structured and the complete ad hoc's;
My regression is useful, I've no time for silly paradox,
I promote a mantra of stability, usability, reliability,
I know all the programs as-designed peculiarities;
I can tell minor typos from nasty bugs and show-stoppers,
I know the various moods of all of the developers!
I know all the testing tools from Quality Centre to Selenium,
The in-house, the free, the cheap and the premium.
I have worked in Agile and other testing methodologies,
And have ranted on blogs - please accept my apologies:
In short, in testing behavioural, functional and structural,
I am the very model of a Software Test Professional,
- Robert Healy
Beware the phrase "no user would ever do that". you might be missing the connection, & malicious users do strange things
on purpose. by @shadowspar
10. Follow us at www.twitter.com/testingclub 9
Rosie has a look inside Red
Gate Software
By rOsiE shErry The relaxed and fun nature of the
There was something that made images reminded me of The Soft-
me smile when I walked into Red ware Testing Club monster style im-
Gate’s offices last week. Whilst ages that we produce. I could sense
waiting in the reception area I no- some strong similarities between
ticed a great Red Gate recruitment Red Gate’s and STC’s ethos coming
poster. It was the cartoon style along.
characters that seemed to catch my
eye. The one in the Gorilla suit It was during our lunch break that
made me smile. I discovered that each of the cartoon
characters was actually a Red Gate
employee. I wondered if they had a
gorilla working for them, but alas,
no. Just someone who occasionally Gate have been advertising testing sucked into their book policy. I love
We're Hiring dresses up as one! jobs on STC with free iPads up for books! This is where anyone can
Test Engineers grabs for anyone who gets an in- order books up to the value of £100
I was at Red Gate to have a bit terview. Unfortunately they’ve run and claim the money back through
of a nose about and get a feel for out of iPads now but they’re still RedGate.
who the people behind the scenes looking for 4-5 new Test Engineers.
were. I had kept seeing Red Gate here’s the advert on their website Yes, I admit to being tempted to
appear in my interweb life. My first and here’s a page they’ve written work for them.
recollection was by ‘friending’ and about what it’s like to be a Tester
chatting about software testing with at red Gate. I’m sure there are other compa-
David atkinson - this was over nies who adopt similar work ethos.
three years ago. I then came across All these reminders of Red Google springs to mind, though
Gate’s existence had me thinking they are obviously on a much bigger
redgate The Business of software - started
by the joint CEO. I’ve been yearn- that it must be a great company to
work for. And I admit it. Whilst
scale. To me it seems an obvious
and logical work ethos to have. To
ing yearning, but unable to go to
this one. My strong interest in col- being shown around Red Gate, ca- talk about it is one thing, putting it
laboration and coworking also made sually meeting the joint CEO Neil into action deserves credit.
me aware of red Gate’s startup Davidson, drooling at the employee
incubator. And then of course, Red benefits, having lunch with other If you are in or near Cambridge
Red Gate-rs, viewing how testing is and like what we do at STC, then
engrained into their agile approach you’ll find a similar professional and
to development and their very open, work ethos to Red Gate. Do check
trusting and collaborative approach them out.
to working with people. I even got
We're Hiring
Test Engineers
Blog post: Vuvuzela Testing : http://bit.ly/dhPaBk
11. 10 July 2010 www.softwaretestingclub.com Use #testingclub hashtag
was interested in him, his experi- not being seen as ‘just another pro-
Yes, It’s Personal ences, and his perspectives. This
helped Fred be more at ease, as I
was not attacking him or defending
grammer’... Now he was a distinct
person.
sELEna DELEsiE my position. I was just curious to
“I don’t want your testers in Foster Open
meetings with my team members.
Listen learn more about him.
Communication
They will be disruptive and then
It is easy to respond with anger Be personable
use information they hear to make People don’t usually want to work
when in a situation where you are
us look bad. Keep them away from with someone they believe to be
intentionally kept out of the loop It is difficult to maintain a hos-
us.” deceitful. It is easy to be hostile with
or unfairly blamed. Anger tends to tile relationship with someone who
Fred said this to me a week after someone who hordes information,
make situations worse though, and is friendly and sincerely interested
we started working together. We is not open to receiving feedback,
causes problems that need to be in you as a person. Building posi-
had both just joined the company, or even lies. This does not support
dealt with later on. tive relationships with colleagues
he as a programming manager, the creation of an open environment
A better approach? Take a deep makes work more enjoyable and
and myself as the test manager. I where people converse and collabo-
breath, calm down, and listen. more successful. This works only
thought our interactions had been rate freely, but encourages a lacklus-
Understanding the other person’s if you are genuine in your interac-
positive, so wondered why Fred felt tre environment of negativity.
perspective is an important first step tions, as people will sense if you
this way. Creating an environment of open
in arriving at a mutually agreeable are being deceitful.
Not wanting to make assump- communication is challenging, espe-
resolution. Allow them to share their It takes time to grow a positive
tions, I inquired, “Fred, I’m curious cially when others behave adversely,
frustration then ask them some ques- relationship from a hostile one, but
to hear about some of your experi- but someone needs to take the first
tions to learn more. Probe gently so stick with it. Working together will
ences. Have you ever been in a situ- steps and lead by example. Why not
you don’t come across aggressively. get easier, and you may even gain a
ation like the one you just referred you? It may take time for your ac-
to?” respected colleague in the process.
tions to rub off on other people, but
Looking surprised, Fred replied, For Example Some approaches include:
they will in time. Some techniques
“Um, yes. Why do you ask?” include:
... Does this situation sound • Learn more about their experiences • Smile in greeting. Say ‘Hello’,
familiar to you? Have you had by using ‘what, when, where, how,’ ‘Good Morning’, and ‘Good
• Speak openly and respectfully
difficulty gaining support from questions. This helps people open Night’. People appreciate the ges-
about what is on your mind. Share
programmers to actively participate up to a conversation. ture, and often can’t help but smile
your thoughts with others to help
in the same meetings and regularly • What expectations do they have of in return.
them see that you are not hiding
collaborate together? the test group? • Use your manners. ‘Please’, and
things from them (and you shouldn’t
Building healthy relationships is • What value do they see in the test ‘Thank You’ can make a world of
be!).
critical in producing great products. group? difference when used genuinely.
• Focus conversations about prob-
If relationships between different • How could the test group change to Let them know when you appreci-
lems on processes and projects.
job functions and team members provide more value? ate work they have done. Your co-
While many problems relate to the
are less than stellar, don’t despair. • What do they need from the test worker will be encouraged to work
people involved, a focus on ‘fixing’
There are techniques to transform group to succeed? with you, rather than against you.
them comes across as an attack. The
hostile organizations into healthy • Ask about their day or their
goal is to engage others, not stop
ones, with no management support I asked questions like these in my weekend. Show interest in their life communication.
required. situation, which showed Fred that I outside of work to start creating a • Ask for feedback and sugges-
relationship that can be built upon.
tions from other people then follow
• Take them out for coffee or lunch.
through on some that make sense to
Spend time together outside of the
implement. Others will see that you
office to strengthen the foundation
respect their opinions and trust their
for a relationship. At this point you
judgment.
may be seeing each other as real
• When problems arise, ask others
people, not just the annoying per-
if they are open to hear suggestions
son you work with!
you have. If they are, share your
• When ready, ask basic questions
ideas and suggest a trial run in im-
about their family and experiences.
plementing one. If it does not work
Most people will respond in kind.
out it can easily be re-evaluated or
At this stage you may be building a
stopped. With this approach you are
casual friendship.
asking for permission to offer advice
and proceed with a solution, rather
In my situation with Fred, I
than forcing one upon them.
made an effort to stop by and chat
with him for a few minutes every
My situation required that I first
day. While he was initially suspi-
listen to Fred to learn about why he
cious about my intentions, Fred
felt the way he did. As Fred became
soon realized that I was genuinely
more open during the course of our
interested in talking with him. He
conversation, I asked if he would
liked being treated respectfully, and
Need help testing? Check out The Crowd : http://thecrowd.softwaretestingclub.com
12. Follow us at www.twitter.com/testingclub 11
Do not become known as a gos- outlined in this paper. These are a
sip or as someone who cannot be good starting point though, and will
trusted to keep confidential infor- make a positive impact.
mation to themselves. This is one of
the easiest ways to lose trust. remember To:
• Show competence and intelli-
gence. Unfairly or not, people trust • Listen
others who show they know what • Be Personable
they are talking about in relation • Foster Open Communication
to their job. If people believe you • Employ a Whole Team Approach,
don’t have the knowledge required and
to do your job, you will be dis- • Build Trust.
missed and overlooked.
• Follow through in good faith on Working in a positive and healthy
be open to hearing some options. eryone time and reduces frustration other techniques described. environment with those around you
When he agreed I suggested that later on. is not impossible. While being an
the testers and programmers at- • Work through problems as a team, In my situation as a new test agent of change can be scary, each
tend the same meetings, but that we without placing blame. Focus on manager I purposefully continued of us has the power to create such an
would discuss and evaluate prog- finding solutions together in order to
improving my interactions with environment. It can be achieved with
ress each week. Fred agreed as he move forward. Fred and other colleagues. The sit- diligence, awareness of self and oth-
was comfortable that we would stop • Do whatever it takes as a team to
uation improved dramatically since ers, and a positive outlook.
if he was not satisfied. In the end it get it done, regardless of job title or
that first interaction in the weeks
proved to not be an issue after all, documented responsibilities. Team following. Co-workers saw that I Best of luck in creating your own
so the joint meetings and collabora- work is an important part of the job.
could be trusted to follow through success story!
tions became a regular occurrence. •Be appreciative and thankful for the
on commitments, was trustworthy
work that your teammates are doing.
in keeping confidential information
The Whole Team to myself, and proved to understand
In working with Fred, I addi-
about author
the technology and processes I was
approach tionally made a concerted effort to working with.
Selena Delesie is a consulting
change the language I used when Fred quickly became support-
Sometimes people forget that software tester and agile coach
discussing the project and problems. ive of my department and I. He
each person working on a project who runs her own company, De-
The term ‘We’ was particularly ef- and his programmers were soon
is working on the same team. It lesie Solutions. She has more than
fective as problems that arose were interacting frequently with us for
is easy to niche one another into 10 years of experience testing,
taken on collectively by the entire advice on software design, trouble-
‘’programmers’, ‘testers’, ‘project managing, and coaching in soft-
team, so no one was put on the spot. shooting issues, and processes.
managers’, etc. When that happens, Subsequently, whoever contributed Fred also became an advocate for ware, testing, and agile practices
blaming other groups for problems to a problem owned up to their mis- early involvement of the test group for leading-edge technologies. She
can quickly become the norm. facilitates the evolution of good
takes and worked with the rest of the in projects, and in needing to hire
Regardless of job title though, teams and organizations into great
team to resolve it. additional testers to keep up with
each person working on a project is ones using individualized and
the heavy workload. I was pleased
part of a larger team with the same team-based coaching and interac-
Build Trust to have not only gained a positive
end goal in mind: Release a quality tive training experiences. Selena
and healthier work environment,
product within budget that meets is co-founder and host for the
The most important factor in but also a respected colleague and
or exceeds customer expectations. Waterloo Workshops on Software
transforming a hostile environment friend.
A shift in mindset is often needed Testing, and an active speaker,
into a healthy environment is trust. participant, and leader in numerous
to work together to accomplish the
end goal using a ‘whole team ap-
Trust is the one thing that makes Conclusion industry-related conferences and
or breaks relationships or change associations. She frequently blogs
proach’. This includes:
initiatives. It is difficult to acquire Regardless of the situation you at www.SelenaDelesie.com.
and quite fragile. Some key factors find yourself in, approach it congru-
• Recognize and communicate that
to consider in building trust with any ently. There may be something go-
you are in this together – no matter
colleague: ing on for the other person that has
what!
• The ‘We’ mentality – using ‘We’ nothing to do with you. Learn what
• Do what you say you will do. It is you can by asking questions so you
instead of ‘Me’ or ‘You’. It is a
difficult to trust someone who does don’t make assumptions about in-
helpful shift in communication, and
not follow through on work they tentions or reasoning. Do your best
people will stop feeling blamed and
have committed to. to speak openly and honestly with
acting defensively.
• Build relationships. People are others, regardless of how distress-
• Understand that project and
inclined to trust people they know ing it may seem.
company success is dependent on
as a colleague, and particularly as a There are many more tech-
successful completion and delivery
friend. Keeping a distance from oth- niques for creating an environment
by everyone.
ers will impede your ability to create where testers and programmers (or
• Communicate and collaborate
a positive work environment. any other groups) collaborate and
early and often, which saves ev-
• Keep private conversations private. support one another than the ones
Tool to remember: RT @cgoldberg: Convert Web Page to PDF: http://bit.ly/RC6Fm @Oliver_NZ