Mind The Gap

Testing is all about the gaps.

Ask anyone what a software tester’s job is, and the answer will more than likely be along the lines of ‘to see if a bunch of code does what it is supposed to do or not’.

Ok, I’ve simplified it, but you get the idea. The perception is that it’s basically exercising software to see if it behaves as it should do, in accordance with the requirements.

But testing is more than that. Or it ought to be! It’s about finding the gaps between what a product owner/stakeholder asked for, and what was delivered – from a software behaviour perspective (at functional and non-functional levels) and also from a customer behaviour and usability perspective.

There may be gaps in the requirements that no-one has considered, gaps in the process that the end user will follow, or gaps in the understanding of the data flow between applications. A tester is in a great position to apply critical thinking skills to not just assess the requirements in terms of what is stated, but to identify what is missing, ask the awkward questions and feed that information back into the team.

I wonder though if we push this enough within the industry. So much emphasis is on the ‘automation’ side of things that we lose sight of the other areas where testers can (and should) add value. Automated tests are necessary and valuable, as we cannot manually regression test everything, and I am not saying that we should do so. But these are essentially ‘dumb’ tests, just repeating what they have been written to do. An individual with great critical thinking and analytical skills can be far more productive spending their time looking for gaps than writing automated tests, yet we seem to value writing automated tests over critical thinking. (See what I did there – good use of the Agile Manifesto syntax).

The writing of automated test scenarios is different to the actual automated tests themselves. The scenarios need to be thought out and established before they can be coded, and you need a particular skill to do that (what I term the testers mindset). The coding of the tests also requires a particular skill in developing code. Developers are great at writing code – it’s their bread and butter, so would it not make sense for testers to focus on the scenarios and ask the developers to code the tests?

I appreciate that there are testers who enjoy coding, so this wouldn’t suit everyone, but if I had to make a choice due to resource constraints, I would rather a tester focus on what needs to be tested, and let someone else code how it is done. After all – in order to automate a scenario, you must first define it.

I expect there will be many who disagree with me, and I welcome other opinions on this. As I state on the home page, this is just my ramblings based on my perception of the industry as it stands, and I could be mistaken, so if you know or feel differently, please do let me know.

 

 

Manual Testing is dead – long live Manual Testing!

This posting is a little later than planned (by about a week), as I had intended writing it after attending the National Software Testing Conference in London, where I was fortunate to speak as well as attend some great talks. I came away with 4 blog ideas, and this is the first one of them.

The demise of manual testing is being discussed in blogs, magazines, conferences, meetup’s etc. If you look at job ad’s, you’d think that manual testing has already died a death and been buried! They all mention ‘Automation tester’ – like its the ONLY thing that testers need to do. So, it was refreshing to attend sessions where people took a different view of things.

I’ve mentioned before about the need for testers to be able to do manual exploratory testing, and it was great to hear Ingo Philipp from Tricentis discuss this in a conference setting. As an industry we need to push testers back towards performing manual exploratory testing, to be complemented by automated regression testing, otherwise we are going to start missing defects due to deficiencies in the overall coverage.

Think about it. An automated test is only as good as the person who wrote it, and only as up to date as when it was last maintained. An automated test cannot make allowances for something that has changed. It cannot stop part-way through and think ‘I wonder what happens if I click this button rather than following the process flow’. It cannot look at the number of steps and highlight that the application sucks from a usability perspective. It cannot point out that the colour scheme is unreadable, or that the company logo is the wrong colour/shape/size etc. It can only run the steps it has been coded to do and validate against what is has been told to check for. So a test may pass, as the application displays what was expected, but what if additional text is present that shouldn’t be there? The test would pass, and unless anyone manually tested that screen, it would go undetected.

I’m not saying that automated tests are unimportant, far from it, but they have their place within a tester’s toolset and are not the only tool available to a tester. Of course you need to have automated tests in place to be able to follow a Continuous integration process, but automated tests cannot cover every possible scenario.

There is another aspect to this as well. Most applications that we develop are going to be used by human beings, so why do we insist on believing that it is best tested by code, without any human test covereage as well? Automated tests should cover the repetitive tests, the load and performance tests, but a person, a tester, needs to look at the application and think about the different paths that the end user could take.

The fun is in the thinking. The benefits are derived from the thinking. A tester’s brain is needed to assess the tests needed, and I despair when I read of really good manual testers with many years experience who feel that they have to leave the field of testing as they do not have automation experience. I sympathise as I came from a manual background. Coding holds no interest for me – if it did, I would have become a developer. So, my career has been based on testing software and working out how best to do so.

We need to stop this freefall ride into automation oblivion, and look at hiring and supporting multi-skilled testers. If a tester cannot write automated code, does it really matter? Better to have a tester who can look at a requirement and work out what needs testing, than a tester who can code but has no clue how to test something!
Developers can write code, so why not pair a develope with a tester to write the automated tests that a tester defines. If a tester wants to write code, and has the time to do so, then that’s great – but we should not be penalising people for knowing how to assess a requriement and define the tests needed (i.e. the core elements of the job), just because they do not have an additional skill in coding automation tests.

I do feel that there are a number of us trying to push back the tide a little to show people the benefits of doing both manual and automated testing, but the more that speakers such as Ingo and myself are getting out there and promoting the benefits of exploratory testing, the better. We need to stop this damaging trend, and ensure that we retain the best skilled testers before they feel undervalued and move on.

Now, who’s with me on this?

Community

There are a number of things I have been involved with recently which have highlighted the importance and necessity of the Testing Community.

We are fortunate to work in an exciting industry – testing technologies, some ground-breaking and others less so, but what we do has an impact on others, and we like to think that our testing efforts result in better end products.

It’s this mindset which I think also feeds into some of the great collaboration that we see.

In my role, I co-run a Testers Chapter (we refer as the QA Chapter – I dislike using the term QA, but thats for another post). This was created in 2011, with no more than 20 testers from different groups within our organisation. As of May 2017, I have 2 people helping me to organise and run the sessions, and there are 85 invitees from the UK, USA and Europe. It’s staggering to be honest to look at the numbers and think that we have that many testers across the globe – many of whom have never met, and are unaware of each others existence. It is a fantastic achievement, and something I am proud to have created and fostered. Our internal community has helped many testers to share problems and solutions, ask for general guidance, and not to feel alone in their day jobs. Some of the testers work with others, but there are testers who are alone in a group and this really serves a need – people to reach out to and ask for help when needed. And that for me is why I do this.

Outside of work, there are many other communities of testers here in the UK, and I have started getting involved in mentoring, as part of the Ministry of Testing, and also the BCS Specialist Testing Interest group, as I want to give something back.

Actually there are a lot of other testers out there who are doing just that. I could name so many who have set up free meetups, training sessions etc (e.g. Rosie Sherry, Tony Bruce, Abby Bangser, Mark Winteringham, Dan Ashby, Richard Bradshaw to name a few), and what I love about this is how much time and effort people are prepared to give back – for nothing!

We are very lucky to be part of this, and I’d encourage you to get involved in your community – whether it is specific to a particular job discipline such as Testing, Business Analysis, or more general around Agile and delivery. It’s really rewarding to meet new people who you’d never get a chance to meet in your day job, and it’s fun to try out new things too.

If you haven’t connected with any other testers yet, why not do a quick Google search – within 5 minutes you’ll have found something going on near you.

Right, now to ‘walk the walk’ and book the next Testers Chapter….

 

Beating them at their own game!

This is a post about Google Chrome, the F12 Developer tool feature and how I felt very smug after using it to get around restrictions!!

I installed an Ad-blocker into Chrome, which is the main browser I used, and I noticed that certain sites were showing messages asking me to remove the Ad-blocker (like the images below), or sign-up for content – neither of which I want to do to be honest. I have ensured that the sites cannot be identified from the screenshots below, as it is not my intention to draw attention to any specific sites, as there are many out there that have these restrictions in place.

      

There was one particular article I wanted to read and I could see no reason why I couldnt do so, seeing it as it wasn’t something that was exclusive to this particular site. I could have searched elsewhere, but was feeling in a less than co-operative mood, so decided to have a play.

Pressing the F12 button and opening the Developer Tools gave me the chance to inspect the element on the page that was blocking the text, by clicking on the button (highlighted in yellow)….

….and then clicking on the blurred area on the page that I wanted to inspect:

This then showed the element in more detail and I could then investigate further.

I found that I had two different choices, depending upon the type of restrictions imposed:

  1. To read the plain text within the Developer Tools pane rather than on the screen, but that meant having to expand every element in order to reach each paragraph:
  2. To try removing the blocker itself in order to read the text on screen as intended by just deleting that line of text.

On one site I had to use option 1 to open each element to read it as deleting the element actually deleted the text within. On another site I used option 2, and simply deleted the element off the page and the text was then visible with no restrictions.

I was surprised how easy it was and I guess that over time, the website builders will try to make this more difficult to do, but not many people really know about the F12 function, so I feel it my duty to help spread the word a little.

It really is that simple. If you are not sure, just have a play. If you delete things that you didnt want to, just reload the page and try again. It really is satisfying to beat people at their own game sometimes!

 

 

The UKStar legacy

Wow!!!

I’m back from the inaugural UKStar event in London, where I was privileged to co-present a talk with   on communication, and it seemed to go down really well. But that’s not the only reason that it was such an enjoyable time.

The venue – County Hall, with a view across Westminster Bridge to Parliament and Big Ben. As a Londoner I have never managed to see the view from there so it was something special. I do have to say that etc.venues did a good job of keeping us fed and watered, and the guys at Eurostar who organised the event were great. They all seemed to really enjoy the event and were super helpful.

The talks – so many great ones and I missed a couple due to clashes that I would love to have been in, but then thats always the case with dual tracks.
I attended the ‘Hey what just Hackened’ half day session with Declan O’Riordan, which helped us look at security testing in a new light, the keynote with Maaret Pyhäjärvi & Llewellyn Falco on the concept of Mob Testing was something new to me. I also enjoyed seeing Paul Collis of the FCA (who I know from the Test Management Forums) do his first conference talk about the transformation of the testing function, Dan Ashby & Hannah Mason speaking about the mentoring and learning opportunities at the Software Testing Clinic (http://www.softwaretestingclinic.com/) and also Stephen Janaway’s journey from Test Management to a broader Software Delivery Manager role gave me a lot of food for thought (http://stephenjanaway.co.uk). The talks were inspiring and I really like the fact that new speakers were encouraged.

The atmosphere – there was a noticable buzz for the whole two days, with so much interaction going on. I think this is one of the best things about any conference – a chance to meet old friends and make new ones, which I did during the Tuesday morning Lean Coffee session, ad-hoc chats over coffee and lunch, and a very nice evening meal after the Monday evening drinks.

So – would I encourage people to attend a conference? Yes! Choose carefully though, as there are many and you want to go to one with a good range of talks so you can maximise the opportunities to learn, contribute to discussions and network.

Would I encourage new speakers to apply? Absolutely! I’m really pleased to see a change in focus at events to actively encourage new speakers, and I will be helping at the BCS to mentor someone this year. I will also speak to Dan Ashby about opportunities to give something back to the testing community.

If you commit to do just one thing this year, then go to a great conference. Be challenged, learn new things and meet new people. What have you got to lose?

2017 – 3 weeks in.

A little belated, but I can get away with posting ‘Happy New Year‘ as this is my first post of 2017.

So, here we are, about 3 weeks in to the year and a lot has happened already:

  • I have taken on a new role in my company as Director of Quality Engineering – essentially Director of the QA function, for a different brand to where I worked before so this has opened up some new and exciting opportunities for me within https://www.flightglobal.com.
  • I recently joined the BCS and am hoping to get involved in their mentoring scheme for new conference speakers – I’d love to give something back to our testing community!
  • An article which I worked on late last year has been published in Test Magazine http://edition.pagesuite-professional.co.uk//launch.aspx?eid=f785b07c-90bd-42be-b7fb-832c6c6bdd86 – and they have done a cracking job of the presentation and layout (thanks 31Media). Its all about where we should focus our efforts as testers when looking at honing our skills, so I would love to hear any feedback if you do happen to read it.
  • I am speaking at Testing Showcase North in Manchester in February on the subject of Tester Training, in a similar vein to the magazine article, but of course delivered as an interactive talk. Details available here http://conferences.unicom.co.uk/testing-showcase-north/.
  • Then a week later I am joining my colleague Bhagya Perera https://bhagyagdm.wordpress.com/ in London at the inaugural UKStar event to deliver a session on ‘The Communication Bridge’, which I am very much looking forward to as well. More details here https://ukstar.eurostarsoftwaretesting.com/.
  • Oh, and in May I will be speaking at the National Software Testing conference in London!

I cant believe how busy it’s been already, and that is without the workshop that I am running with my new team next Friday, and our ongoing QA Chapters that we run in-house.

But I am not complaining, I get bored easily (something that I am not proud of, as I wish I had more patience overall!), so doing a lot of things is good for me. One of my old team asked me last week how I found the time to do so many things. I do wonder myself sometimes, but my reply to her was that it comes down to having an in-built passion to do something of benefit. No-one can be forced to do anything extra – we have to want to. The secret is to find something that excites you, helps you grow as an individual, as well as in terms of job related skills. Giving something back by helping others where you can (it shouldn’t be just about personal gain), and making a difference – these are important to me, and I really hope that 2017 is even more awesome than 2016. Of course that depends on the amount of time and effort I am prepared to invest, so the incentive lies with me – but that’s what is good about it. I am in control and can do as much or as little as I feel capable of doing.

So, watch this space 🙂

Oh, one final thought – my job title is now Director, not Manager, but I think I will leave the site titled as ‘Musings of a Test Manager’, as I still think it sounds good to me. I tried thinking of alternatives, but ‘Doodles of a QA Director’ doesnt really have the same ring!

My reflection on 2016

This will be my last post for 2016 so I thought it an idea to reflect back on what has happened this year.

2016 has been a great year work wise (and personally too, but this is more of a ‘work’ type blog, so I’ll skip that). I’ve continued co-running our RBI global QA Chapter with Bhagya (https://bhagyagdm.wordpress.com/), bringing 75 testers together on a quarterly basis to create a testing community, where we help each other, ask questions, give support, perform demo’s etc, and we are looking at how we can reboot the Chapters for other disciplines.

I’ve also been jointly running the Distributed Teams workshops with Bhagya which we both learned about at the March 2016 Test Bash from Lisa Crispin and Abby Bangser – we have done 3 internally, and all were very successful.

In April at the UK Test Management Forum, I presented a talk on the Challenges for Test Managers, as there are less of us. What does the future hold? It was an interesting discussion and led onto another talk in December – see below!

From TestBash, I brought back to my team the concept of Lean Coffee meetings, and we adopted those for our team meetings and also for the QA Chapters – hugely successful as it gives every tester a voice, whether they are shy and unused to speaking openly or not.

Then I found that I spent the summer preparing for a busy Q4:

In October I presented by first Webinar, thanks to Unicom, on Being a Better Tester. It went down so well, that I am now presenting it as a talk at Testing Showcase North in Manchester in February 2017!

In November I had an amazing visit to India, where I was privileged to speak in front of a large number of testers about Being a Better Tester – essentially delivering my webinar live. Also I ran a smaller version of the Distributed Teams workshop for the team we work with and they found it hugely informative. (More details on my India visit blog page).

And in December, I spoke at the British Computer Society, Testing Interest Group on ‘Challenges for Test Managers’ after being invited to do so, following on from my April session. It was a privilege to be asked and to be able to run an interactive session with a larger number of attendees, which I felt was very rewarding. I have just typed up a small article for the BCS Tester magazine to report back on the talk and the ideas that came from the audience, as I find that a lot of conferences don’t do enough of this – we should do more interactive thought gathering sessions and share that around.

It feels that this year has been about adding value to others. Giving something back and helping others to do their jobs better – this is the reason I go to work, and why I do conferences, articles and this blog. If I am not making a difference, then what is my purpose? It’s something that is very important to me.

So, now I am starting to look forward to 2017, and there’s a lot lined up already:

  • I have a magazine article coming out in January (Test Magazine) on ‘Changing our approach to Training – how tester training needs to evolve’.
  • In February I have the Manchester talk.
  • A week later Bhagya and I are leading a session on Communication at the inaugural UKSTAR event, which I am hugely excited about.
  • In May I am hopefully speaking at the National Software Testing Conference.
  • I have also volunteered to be a mentor to a new speaker, which will happen later in the year.
  • And I am still involved in helping with the UKTMF, which will be getting a revamp in 2017.

It’s great to have all this planned before getting to the end of 2016, but it takes effort. Nothing just falls into your lap – I have had to put myself forward to do these things, and it is definitely worth it.

If you have read any of my postings this year, I would like to say thank you. I do enjoy receiving comments – I know that someone has either found it useful or challenged enough by what I say to respond. Without readers, it wouldn’t be worth doing!

I wish you a very Happy Christmas and a prosperous and successful New Year. Here’s to 2017!