Skip to main content

Toujours Testing


Some time ago, maybe even a year ago now, one of my team said that she had been watching me. I acted cool - although that may have been the onset of a cold sweat - but fortunately my dark secrets remain mine and her observation was simply that, to her mind, I am always testing. She gave a couple of examples:
  • When the test team were being given an expert-level product demo, I took notes not only on the functionality but also on the way that that information was being communicated to us, verbally and in slides, and I fed that back to the business because what we were watching was similar to the content of our customer demos.
  • When I set a piece of work - for myself or others - I will frequently have a secondary aim other than simply getting the piece of work done, and that aim often has an evaluation or assessment element to it.

And on reflection I think she's right. This is something that I have done, and do do. These days, I believe, I do it more explicitly than I used to because, over a long period of time and particularly by observing myself, I realised that this was my intuition and instinct, and I have found it personally valuable.

Right now at work we're considering some potentially significant changes to the way we organise ourselves and I'm spending time thinking about possibilities and exploring ramifications of them, mostly as thought experiment and by talking to members of the team. When I had the opportunity to try, in a small way, one of the possibilities, I took it. It's a possibility I instinctively shy away from and so I was very interested in my reaction to it. And later I  followed up with a recipient of my action too, to understand their feelings and explain why I did what I did.

I like to make myself and my work open for others to test and, when I do, the questions that follow mean that I learn things and, as a team, we do a better job overall. I am happy when someone on my team finds one of my mistakes and we correct it, although it took me some time to see and understand my feelings of defensiveness in those kinds of situations. (And they never go away.) Through this kind of self-testing I have arrived at knowledge about myself that I can codify and use to guide how I want to behave in future.

I also test myself by issuing challenges. Talking at EuroSTAR 2015 was the culmination of a 12-month challenge to try to get over increasing nervousness at public speaking. (I'll have more to say about that another time.)

I try hard to write reports in terms of testable assertions. And then, before delivery, I test them. I'll frequently find places where I've made too general or specific a claim, or I might feel that I need to go and look again at some data to check that I can back up what I'm saying. For instance, in an earlier draft of this post, the next paragraph started "So, yes, I am always testing ..." But it doesn't start that way any more because in proofing I asked myself "really, always testing? Always?"

So perhaps I can agree that I am always checking, challenging, exploring, investigating, ... Maybe that's why testing felt like a good fit when I stumbled into it. I like the spirit of the suggestion and - to the extent I'm prepared to commit to a literal "always" - I am always testing. Or, to tune it still further, I am always doing things that I think are consistent with and conducive to being a good and improving tester.

So I was particularly intrigued to read Harnessed Tester writing about wanting to switch testing off:
... how do you switch off the tester in you (if you do even manage it at all)? Are you able to function in the “Real World” without slipping into your profession or do you find yourself testing things you shouldn’t or don’t need to test? Do you even see it as a bad thing?
I don't ever want this to be switched off.  I want to work it, to exercise it, to train it. I seek out opportunities to put it to use. I love this quote from George Carlin:
The brain is a goal-seeking and problem-solving machine, and if you put into it the parameters of what it is you need or want or expect, and you feed it, it will do a lot of work without you even noticing.
I quoted it in Your Testing is a Joke where I described how I use humour as just such a training device, as a tool for feeding my brain.

I don't ever want this to be switched off. Since having children, I have become interested in how they see and interact with the world. I encourage my two daughters to have their enquiring mind turned on at all times and I praise them when they find a new perspective or ask a question or seek information. I am prepared (most times) to keep answering those long chains of why questions until they get bored, and I try find opportunities to provoke thoughts that will start their thinking process off.

I don't ever want this to be switched off. Last Christmas I bought my family a shared present of How to be an Explorer of the World and we've done several of the experiments together. Last month we went on an adventure walk in Ely.  My youngest daughter was particularly inspired by one task that I set: find something hidden. She's since begun to read Pippi Longstocking and styles herself a "Thing Searcher" and, while I was weeding the drive (and on the side listening to an interview with James Bach) last weekend, she interrupted me:
Dad, how can I find things that no-one else finds?
You could look where no-one else looks

And so that's exactly what she did, initially by standing on a wheelie bin to inspect the top of the hedge.

I don't want this to ever be switched off. What I want is for asking, probing, looking, questioning, reviewing, being creative, and exploring to be second nature. I think that these are valuable skills in life, but also that if they become what you just do  then, as a tester, you can more often get on with a task and not spend explicit time on the techniques.

I don't ever want this to be switched off. However, where I think that Harnessed Tester has got a point, and it's a strong one, is that it's important to be able to deploy these skills appropriately, to make sensible use of them, to report your findings from it in a way that's acceptable and beneficial to you, to whoever you are dealing with and to the context you find yourself in.

And that, by Weinberg's definitions, is about acting congruently, (see e.g. Managing Teams Congruently) which is one of the challenges I have set for myself and have been working on for the last couple of years.

And I've told my team that I'm dong it.

And I know that they are watching...
Image:https://flic.kr/p/7JTN1g

Comments

Popular posts from this blog

Can Code, Can't Code, Is Useful

The Association for Software Testing is crowd-sourcing a book,  Navigating the World as a Context-Driven Tester , which aims to provide  responses to common questions and statements about testing from a  context-driven perspective . It's being edited by  Lee Hawkins  who is  posing questions on  Twitter ,   LinkedIn , Mastodon , Slack , and the AST  mailing list  and then collating the replies, focusing on practice over theory. I've decided to  contribute  by answering briefly, and without a lot of editing or crafting, by imagining that I'm speaking to someone in software development who's acting in good faith, cares about their work and mine, but doesn't have much visibility of what testing can be. Perhaps you'd like to join me?   --00-- "If testers can’t code, they’re of no use to us" My first reaction is to wonder what you expect from your testers. I am immediately interested in your working context and the way

Testing (AI) is Testing

Last November I gave a talk, Random Exploration of a Chatbot API , at the BCS Testing, Diversity, AI Conference .  It was a nice surprise afterwards to be offered a book from their catalogue and I chose Artificial Intelligence and Software Testing by Rex Black, James Davenport, Joanna Olszewska, Jeremias Rößler, Adam Leon Smith, and Jonathon Wright.  This week, on a couple of train journeys around East Anglia, I read it and made sketchnotes. As someone not deeply into this field, but who has been experimenting with AI as a testing tool at work, I found the landscape view provided by the book interesting, particularly the lists: of challenges in testing AI, of approaches to testing AI, and of quality aspects to consider when evaluating AI.  Despite the hype around the area right now there's much that any competent tester will be familiar with, and skills that translate directly. Where there's likely to be novelty is in the technology, and the technical domain, and the effect of

Testers are Gate-Crashers

  The Association for Software Testing is crowd-sourcing a book,  Navigating the World as a Context-Driven Tester , which aims to provide  responses to common questions and statements about testing from a  context-driven perspective . It's being edited by  Lee Hawkins  who is  posing questions on  Twitter ,   LinkedIn , Mastodon , Slack , and the AST  mailing list  and then collating the replies, focusing on practice over theory. I've decided to  contribute  by answering briefly, and without a lot of editing or crafting, by imagining that I'm speaking to someone in software development who's acting in good faith, cares about their work and mine, but doesn't have much visibility of what testing can be. Perhaps you'd like to join me?   --00-- "Testers are the gatekeepers of quality" Instinctively I don't like the sound of that, but I wonder what you mean by it. Perhaps one or more of these? Testers set the quality sta

Am I Wrong?

I happened across Exploratory Testing: Why Is It Not Ideal for Agile Projects? by Vitaly Prus this week and I was triggered. But why? I took a few minutes to think that through. Partly, I guess, I feel directly challenged. I work on an agile project (by the definition in the article) and I would say that I use exclusively exploratory testing. Naturally, I like to think I'm doing a good job. Am I wrong? After calming down, and re-reading the article a couple of times, I don't think so. 😸 From the start, even the title makes me tense. The ideal solution is a perfect solution, the best solution. My context-driven instincts are reluctant to accept the premise, and I wonder what the author thinks is an ideal solution for an agile project, or any project. I notice also that I slid so easily from "an approach is not ideal" into "I am not doing a good job" and, in retrospect, that makes me smile. It doesn't do any harm to be reminded that your cognitive bias

Play to Play

I'm reading Rick Rubin's The Creative Act: A Way of Being . It's spiritual without being religious, simultaneously vague and specific, and unerring positive about the power and ubiquity of creativity.  We artists — and we are all artists he says — can boost our creativity by being open and welcoming to knowledge and experiences and layering them with past knowledge and experiences to create new knowledge and experiences.  If that sounds a little New Age to you, well it does to me too, yet also fits with how I think about how I work. This is in part due to that vagueness, in part due to the human tendency to pattern-match, and in part because it's true. I'm only about a quarter of the way through the book but already I am making connections to things that I think and that I have thought in the past. For example, in some ways it resembles essay-format Oblique Strategy cards and I wrote about the potential value of them to testers 12 years ago. This week I found the f

Meet Me Halfway?

  The Association for Software Testing is crowd-sourcing a book,  Navigating the World as a Context-Driven Tester , which aims to provide  responses to common questions and statements about testing from a  context-driven perspective . It's being edited by  Lee Hawkins  who is  posing questions on  Twitter ,   LinkedIn , Mastodon , Slack , and the AST  mailing list  and then collating the replies, focusing on practice over theory. I've decided to  contribute  by answering briefly, and without a lot of editing or crafting, by imagining that I'm speaking to someone in software development who's acting in good faith, cares about their work and mine, but doesn't have much visibility of what testing can be. Perhaps you'd like to join me?   --00-- "Stop answering my questions with questions." Sure, I can do that. In return, please stop asking me questions so open to interpretation that any answer would be almost meaningless and certa

Test Now

The Association for Software Testing is crowd-sourcing a book,  Navigating the World as a Context-Driven Tester , which aims to provide  responses to common questions and statements about testing from a  context-driven perspective . It's being edited by  Lee Hawkins  who is  posing questions on  Twitter ,   LinkedIn , Mastodon , Slack , and the AST  mailing list  and then collating the replies, focusing on practice over theory. I've decided to  contribute  by answering briefly, and without a lot of editing or crafting, by imagining that I'm speaking to someone in software development who's acting in good faith, cares about their work and mine, but doesn't have much visibility of what testing can be. Perhaps you'd like to join me?   --00-- "When is the best time to test?" Twenty posts in , I hope you're not expecting an answer without nuance? You are? Well, I'll do my best. For me, the best time to test is when there

Rage Against the Machinery

  I often review and collaborate on unit tests at work. One of the patterns I see a lot is this: there are a handful of tests, each about a page long the tests share a lot of functionality, copy-pasted the test data is a complex object, created inside the test the test data varies little from test to test. In Kotlin-ish pseudocode, each unit test might look something like this: @Test fun `test input against response for endpoint` () { setupMocks() setupTestContext() ... val input = Object(a, OtherObject(b, c), AnotherObject(d)) ... val response = someHttpCall(endPoint, method, headers, createBodyFromInput(input) ) ... val expected = Object(w, OtherObject(x, y), AnotherObject (z)) val output = Object(process(response.getField()), otherProcess(response.getOtherField()), response.getLastField()) assertEquals(expected, output) } ... While these tests are generally functional, and I rarely have reason to doubt that they

A Qualified Answer

The Association for Software Testing is crowd-sourcing a book,  Navigating the World as a Context-Driven Tester , which aims to provide  responses to common questions and statements about testing from a  context-driven perspective . It's being edited by  Lee Hawkins  who is  posing questions on  Twitter ,   LinkedIn ,   Slack , and the AST  mailing list  and then collating the replies, focusing on practice over theory. I've decided to  contribute  by answering briefly, and without a lot of editing or crafting, by imagining that I'm speaking to someone in software development who's acting in good faith, cares about their work and mine, but doesn't have much visibility of what testing can be. Perhaps you'd like to join me?   --00-- "Whenever possible, you should hire testers with testing certifications"  Interesting. Which would you value more? (a) a candidate who was sent on loads of courses approved by some organisation you don't know and ru

README

    This week at work my team attended a Myers Briggs Type Indicator workshop. Beforehand we each completed a questionnaire which assigned us a personality type based on our position on five behavioural preference axes. For what it's worth, this time I was labelled INFJ-A and roughly at the mid-point on every axis.  I am sceptical about the value of such labels . In my less charitable moments, I imagine that the MBTI exercise gives us each a box and, later when work shows up, we try to force the work into the box regardless of any compatiblity in size and shape. On the other hand, I am not sceptical about the value of having conversations with those I work with about how we each like to work or, if you prefer it, what shape our boxes are, how much they flex, and how eager we are to chop problems up so that they fit into our boxes. Wondering how to stretch the workshop's conversational value into something ongoing I decided to write a README for me and