RSS

Tag Archives: Software Testing

Rapid Software Testing – Reading Recommendations

Having just completed Rapid Software Testing twice in two weeks with James Bach, I’m feeling motivated and inspired to continue learning.

Here’s a list of books recommended by James during the course. These will enhance your skills and change the way you look at testing.

RSTReading

The first book may be the most important, and the most difficult to read. I’m still getting through my copy. The content is excellent, and there’s a lot to take in.
The next 4 books are real page-turners, explaining important and complex information is a way that’s enjoyable to read.
I haven’t yet read the last book on this list.

An Introduction to General Systems Thinking by Gerald Weinberg
Thinking, Fast and Slow by Daniel Kahneman
Tacit and Explicit Knowledge by Harry Collins
Lessons Learned in Software Testing: A Context-Driven Approach by Cem Kaner, James Bach, Bret Pettichord
The Secrets of Consulting: A Guide to Giving and Getting Advice Successfully by Gerald Weinberg
Discussion of the Method: Conducting the Engineer’s Approach to Problem Solving by Billy Koen

If you’ve already read these books, I’m interested to hear your thoughts. For example, what was the biggest takeaway you got from each book, and how has that helped you with software testing?

 
7 Comments

Posted by on August 14, 2015 in Learning, Software Testing

 

Tags: , , , ,

What’s Your Context? – Workshop with Fiona Charles

How do you discover the differences in context between clients and projects, and whether those differences matter? While intuition is important, unconscious analysis and choices lead to unconscious assumptions – Fiona Charles

Ask a tester which approach is the best way to test software. The typical response will be “It depends”. But what does it depend on, and why? How will those facors affect testing?

Fiona presented her “What’s Your Context?” workshop to the Auckland WeTest meetup group. We split into 6 groups to brainstorm the elements of context that affect our approach to testing. It’s difficult to report on the value gained from attending a workshop, as the learning comes from being involved in the discussion. Here I’ve recorded my brief notes on the “Aha!” moments described by others at the end of the workshop.

Me: I’ll be doing this exercise regularly for projects I work on. More aware how much context can change during the course of the project.

Natalia: It was very useful to learn about other tester’s contexts.

Pete: Two favourite sayings are ‘It depends’ and ‘Why?’. For example, ‘Why are we doing this?’.

Morris: We say ‘team’ a lot. Testing is a team sport.

Vikas: Highlights the importance of thinking about context deliberately, instead of repeating past processes.

Shaheem: Maintain a risk focus, which things can derail or negatively impact the project.

Chris: The definition of Minimum Viable Product is heavily context-dependent.

Georgia: Focus on the problem being solved. Take history into account. Appreciate the benefit of informal communications (this arose in the context of working with offsite teams).

Vincent: Like the experience of working with his team, learning from their experiences, and the way they grouped elements of context together into personal, product, team and development methodology.

John: So many sources of information beyond just requirements. Stop and consider context first before you get started.

I encourage other testers to take Fiona‘s workshop. Her questions, insights and stories brought the exercise to the next level.
In the meantime consider pairing up with one or more testers and asking yourselves, “Which elements of your context affect your testing? Why, and how? How can you use this information to improve your testing approach for your current project?”

 
1 Comment

Posted by on November 10, 2014 in Software Testing

 

Tags: , , ,

Let’s Test Oz – Closing Keynote from Fiona Charles

The closing keynote speech of Let’s Test Oz 2014 was “The Battle for Our Hearts and Minds” by Fiona Charles.

This was the first time I’ve attended one of Fiona’s talks in person. My impressions of Fiona after this conference are that she is honest, practical, a strategic thinker and that she doesn’t mince words.

“I have seen 50-page test strategies without an ounce of strategic thinking”

Fiona Charles

“I’m not going to do bad work” Fiona Charles

The theme of this keynote was that attempts to standardise testing are stifling creativity and value, and that it’s time for testers to take back our craft. Fiona spoke of the need for testers to have the courage and tenacity to speak up about important issues when others remain quiet. This included being willing to ‘blow the whistle‘ where necessary to expose important issues which could affect people’s lives.

“We need to be able to say things that nobody wants to hear, because that’s our job”

The topic of testing standards came up more than once, as a primary cause of the long-term de-skilling of the testing workforce and the current overall state of testing processes and documentation. Using the example of a 25-page IEEE 829 compliant Test Plan, Fiona saw no project-specific content until page 12. The time taken to produce these documents is costing companies money, and contributes to testing being viewed as ‘too expensive’. The focus of testing should be on adding value to the project and to the company.

“The Master Test Plan is probably the most useless document since printing was invented”

Most of the people behind the creation of ISO 29119 stand to profit if the standard is introduced. Interestingly, Fiona’s opposition to ISO 29119 comes despite her anticipation that she’ll profit from the standard if it’s introduced. Fiona described how she has seen first-hand the damage caused by compliance to the IEEE 829 test documentation standard. She has been called in to multiple organisations to mop up the damage which that standard leaves in its wake, and she has every reason to believe that ISO 29119 would create more of the same damage.

“The quest for certainty collides with the reality of software development”

Fiona introduced the concept of “healthy uncertainty vs unhealthy certainty” while debunking the notion that popular test metrics are useful. She covered some key attributes of great testers, and they’re not the ones you see listed in jobs ads: Integrity, Independence of Mind, Courage, Engagement…

I really enjoyed this talk. It was motivational, inspirational and a call to action for all testers.

Recommended reading\viewing:
The slides from this keynote are available from the Let’s Test Oz website.
Breaking the Tyranny of Form blog post – Fiona Charles
Delivering Unwelcome Messages EuroSTAR webinar – Fiona Charles
Slides from We are the 99% – Anne-Marie Charrett

All quotes in this post are from Fiona Charles’ keynote.

 
2 Comments

Posted by on October 10, 2014 in Software Testing

 

Tags: , , , ,

Judging the Software Testing World Cup – Oceania 2014

Preparation
When I was asked if I’d be interested in judging the Software Testing World Cup Oceania event this year, I said “Sure, why not?”. I actually hadn’t heard of it before. From the little information available on the website at the time, I didn’t have a good understanding of the sheer scale of this event.

When I received the first group email communication from Maik I realised that preparations were already well underway. I was overwhelmed at first by the large number of judges who were already involved, and impressed when I recognised some of their names from the online software testing community.

Once we had all agreed on dates for the regional competitions, it seemed like no time at all until the first competition was held in North America. Immediately after the competition there were group emails flying back and forth about test reports, bug details, reproducibility, product owner engagement… I read every email but most of them went over my head. It didn’t occur to me that I could ask Maik & Matt for access to the test reports and the bug tracking tool in order to follow the process more closely. I assumed I wouldn’t be allowed access by the product owners. I also know now that there’s a recorded YouTube stream video of each competition available for public viewing, which I didn’t realise at the time. Mostly I was just feeling overwhelmed and thinking, “We’re next”.

A few days later the Oceania competition was approaching and I asked if the North America judges had any blog posts or ‘Lessons Learned’ to share with the judges of upcoming events. But of course they were still in full-swing of actual judging, on top of their day jobs, and hadn’t had a chance to put anything together yet.

Competition
On the night of the competition, I sent out an email 1 hour before the start time basically asking, “What should I be doing?”.
That lead to some emails from Matt and 30 minutes later I had about 7 tabs open in Firefox on my laptop and I was feeling very confused. We were using Skype, Twitter, Google Drive, YouTube, email, Google Hangouts, HP Agile Manager and SUT concurrently.  I started familiarising myself with SocialText, our SUT. I hadn’t realised I’d be on camera and recorded on YouTube, but luckily I wasn’t in my pyjamas.

Due to some technical issues (read: user error – long story) I was hearing the audio live from Google Hangouts and with a 5 second delay in stereo from YouTube. I wasn’t able to mute one without also muting the other. When I explained the problem Sigge sent me a link to view comments on the live stream without viewing the video, and then I could start to participate properly. I’d lost more than 20 minutes worth of product explanation from the product owner unfortunately. The other regional judge Dean joined just after I did, I think he was having his own technical issues.

For the remainder of the competition, I was Alt-Tabbing my way through Firefox:
– Monitoring YouTube comments and reporting participant questions to the product owners verbally
– Typing up answers to the questions back on YouTube for quick reference
– Constantly switching YouTube comments view from Top Comments to Newest First so I could see if any new questions had been asked (grumble grumble)
– Reviewing the judging categories in Google Drive
– Posting to Twitter, just for fun
– Watching the product owner video stream and chatting to other judges in Google Hangouts
– Reading the bugs that were being raised
– Trying to repro some of the more interesting bugs in the SUT
– Emailing participants who were having technical issues
– I was also sending the occasional one-on-one chat message to other judges using Skype.

About 2 hours into the competition, the participant questions had settled down while they got on with raising defects and writing their reports. As soon as we had a moment to think, all of the regional judges in Oceania were asking ourselves the same question:

If this was so complicated and hectic for 3 regional judges with xx a cup load of teams, how will the 3 regional judges for Asia cope with xxx a bucket load of teams?

Judging
From the outset we had two goals for judging the competition:
1. Judge the participating teams and agree on a winner for the region.
2. Think of ways to make the Asia competition manageable for judges and participants.

Every bug was read by one or more judges. Like the other judges, I tried to reproduce the interesting bugs on my own systems. Before even reading the test reports, I could get a feel for which areas each team had focussed their time on.

Every team’s entry was judged by at least 3-4 of the 5 judges. If the discrepancy between scores was above average, we’d judge that team’s entry again until we agreed on the overall score. This is a very fair approach, and also very time consuming.

Each day after work, the local judges were online judging entries. We didn’t coordinate to judge at the same time, we all just tried to complete the task expediently, around our existing schedules. We could see each other online in Skype, updating the judges notes online, creating strange things in the SUT and updating the status of defect reports. I found it helpful to be able to jump on Skype and ask for opinions and clarifications in real-time.

During the judging I found more than a few bugs in the defect management tool. As a thankyou for their sponsorship (read: because the bugs were annoying me so much), I was planning to report the bugs to HP somehow. But now that I’ve finished using the tool I’ve lost motivation for reporting the bugs to HP.

I don’t like to say too much more about the judging publicly until after the final STWC event in November. I’m happy to talk it through with other judges in our Google Group in the meantime.

After the judging I put together some metrics to show myself once again just how useful metrics are. Suffice to say, there was no metric I could find that correctly predicted the winning team. I didn’t try very hard though. Add a comment below if there’s a metric you’d like me to generate from our competition data, and I’ll let you know if it would have proven useful for judging the quality of the teams’ work.

Tips for Judges
1. Like most volunteer work this was very rewarding, particularly when you find people in your region who are as passionate about testing as you are.

2. This is an excellent learning experience, as you would expect. As with participants, this is your chance to show your professionalism, work with peers in your region, and learn about different approaches to testing.

3. You don’t need to be in the same region as the competition in order to judge it. There are xxx many teams registered for the upcoming Asia competition and I see 3 local judges listed on the website. Are you free to assist with judging? Why not contact Maik or Matt today and offer to help (perhaps include a link to your LinkedIn profile or twitter account).

4. Why not write a blog about your experience? It helps you to capture and remember what you’ve learned, and it may help a judge of the next competition who is feeling unprepared and unsure of what to expect.

5. Have some drinks and snacks within reach (or in my case, a great partner within earshot).

6. This is your regional competition. Be actively involved during the competition, speak up during the live chat, ask clarifying questions…

7. Set aside a few days\evenings after the competition to focus on judging.

8. If you have an idea to improve the judging in any way, speak up to Matt and Maik. They’re experienced in this process now, and will be able to discuss it with you further.

9. Sigge, Dean and I have come up with some ideas for processes and improvements, and fed those back to Matt and Maik for consideration.

Some tips for Participants
1. This competition is intensive and participant’s attention is pulled in multiple directions for the duration of the competition. None of the Oceania teams with 1 member completed their Test Report. Most of the 2 member teams also failed to complete the competition. In my opinion, if you are a team of 1 or 2 people, please consider joining up to form teams of 3 or 4 people.

2. If at all possible, co-locate with team members for the competition. Or if you have video conferencing available at the office, use it. There is a lot going on at once, and ease of communication with team members is key.

3. Bug quality is so much more important that quantity. I could write a whole blog post about this point alone, but I shouldn’t really have to for this target audience 🙂 Brush up on your bug advocacy skills.

4. Have multiple monitors available if you can. At a minimum, try to have one screen where the whole team can see and hear the live stream video of the product owner, in addition to everyone having their own screen to work on.

5. Get familiar with the defect reporting tool in advance. Learn how to attach screenshots to issues, for example.

6. The competition has a strict finish time. That’s the deadline to have all bugs and test reports submitted by, not 30 mins later and not the next day 🙂

7. You can find additional tips on twitter if you search for #STWC2014 (If you’re not on twitter yet, read this and then join twitter).

8. Have fun with your team! This is an opportunity to work closely with colleagues and peers. While it’s a simulation of a high-pressure project with a very short timeline, it is just a simulation.

Good luck!

 
2 Comments

Posted by on May 17, 2014 in Software Testing

 

Tags: , ,

Preparation for the Rapid Software Testing Course

In June this year I will be attending the Rapid Software Testing (RST) Course with James Bach, through Testing Times in Australia.

To say I’m excited is an understatement. I have high expectations of this course, based on many excellent reviews that I’ve read in blog posts from testers whom I respect.

What do I intend to achieve from taking the RST course?

  • Improve my testing skills, and add new skills to my testing toolbox
  • Explain my approach to software testing in a professional way
  • Discuss and debate various testing approaches with confidence
  • Approach unexpected challenges with confidence
  • Regularly re-prioritise my testing efforts towards areas of highest risk
  • Learn to grasp the key elements of new concepts quickly
  • Improve my critical thinking skills and questioning skills, particularly when faced with illogical statements that appear reasonable at first glance
  • Write a blog post discussing aspects of the question in my blog URL: Is it good enough yet?

This is quite a list of things to expect from a 3 day course on testing!
From everything I’ve read about this course from past attendees it is also completely achievable, which makes this course unlike any other.

Why didn’t I ask my company to send me? 

This question came up on Twitter. Adding course cost, international flights and 4 days off work including travel time, RST costs a lot of money. Yet I’ve chosen to send myself to the course. Why?

  • Fear of being told no if I had asked my company to send me (i.e. I fear I might find out that I work for a company which doesn’t recognise the innate value of this course)
  • Lack of confidence in my negotiating skills (James Bach is not usually mentioned in a positive way at my company, so I suspect that I’d have some convincing to do…)
  • To prove to myself that I take my career seriously
  • Knowledge that this is a worthwhile investment, and excellent value for money

How am I preparing for the course?

Wow. This started as a short list, and the more I researched, the longer it grew. If I do even half of the things on this list I’ll be a much better tester, without even taking the course! I need to remind myself that they don’t ALL need to be done in the next three months, and practise prioritising.

  • Read some blog posts and resources on satisfice.com
  • Read blog posts about RST experiences (- tick)
  • Lessons Learned in Software Testing – flick through it again
  • Read RST slides and appendices
  • Keep playing the dice game
  • Basically try to prepare myself so that James can’t catch me out. Then acknowledge and accept that I will be caught out, that I will feel uncomfortable, and that I’ll learn something from it
  • Read ‘Thinking fast and slow’ (- in progress)
  • Read ‘Explore It!’ and practice as I read (- in progress)
  • Learn about experiment design
  • Watch 7 Samurai movie (?? This came from David Greenlees)
  • Read “Things that make us smarter”
  • General Systems Thinking – read it again
  • Bill Anders (Also from David’s blog post. “Failure is not an option”? I need to do more research here)
  • Learn some basic Ruby. Everyday Scripting with Ruby: For Teams, Testers, and You, by Brian Marick
  • What are Decision tables?
  • Practise drawing State Models
  • Brush off my dusty Unix shell scripting knowledge (I hope it’s still in there somewhere)

What do I need to remember most during the course?

  • Don’t be afraid to fall into a trap and learn your way out of it
  • Ask for help when you need help
  • Ask questions when you need more information
  • Verify or state your assumptions
  • Don’t get defensive
  • Don’t take anything personally

This post was written by me, for me. If you’ve also received any value out of it – awesome! Let me know in the Comments section.

 
10 Comments

Posted by on March 16, 2014 in Uncategorized

 

Tags: , , ,

Test Tweeting

This is a Lightning Talk which I prepared for the Sydney Testers Meetup but was unable to present due to illness.

It is intended for testers who are Twitter newbies and Twitter virgins. My aim is to help get more testers online, tweeting, and contributing to the online global testing community.

I plan to present this talk at an Auckland Testers Meetup. In the meantime I’m asked about this topic almost weekly while I’m meeting new testers and spreading the word about CDT, so I’m making my unpolished slides available:

Test Tweeting slides – updated May 2014

I’ve had some great feedback already to add information about Lists, Apps and Live Tweeting at events.
Beyond that, if you have any feedback, or suggestions of your favourite lists and apps for Twitter, please comment below. Thanks!

Update: I presented this talk last night at #WeTest and it was a success (as defined and judged by me, arbitrarily).
Thanks everyone who provided feedback, and to everyone who attended last night and asked some excellent questions.

To those of you who haven’t signed up to Twitter yet – what are you waiting for? 🙂

 
7 Comments

Posted by on February 23, 2014 in Uncategorized

 

Tags: , , , , ,

Observation as a source of truth

Seeing something with your own eyes does not necessarily make it true.

In one of my previous testing roles, I was testing a software application which produced
image output files using custom hardware input devices. While I was working with a
developer at his computer, he opened an image file which exhibited characteristics I
hadn’t seen before when testing this product. I went to discuss the abnormality with our
image processing expert (let’s call him Jon), and he requested a copy of the file to help
determine whether this was the result of a software bug or a hardware fault.

I returned to the developer with this request, and watched as he copied the correct file to
a shared network drive. However, when I retraced my steps back to Jon’s desk and he
opened the image file, he saw only random ASCII characters. Jon said that this was not
a valid image file, and for a while I insisted that it was…

Eventually I returned to the developer’s desk seeking support, only to find out that he
could no longer open the original file on his computer either. Why? It turned out that his
computer had malfunctioned, and the file had become corrupted sometime between us
viewing it and him copying it to the network.

At this point I wondered why I had been questioning one of the country’s leading experts
on digital image processing, over something so basic as whether or not an image file
was valid. I’d been totally biased by the fact that I had observed the image with my own
eyes, rather than thinking logically about what piece of the puzzle I was missing in this
scenario.

First published here.

 
Leave a comment

Posted by on August 18, 2013 in Software Testing

 

Tags:

 
%d bloggers like this: