Being productive although being tired

I asked a question on Twitter, and the amount of feedback and replies was overwhelming, and very valuable and very diverse. So for it to not be lost, I decided to blog about it.

This was the tweet:

Hey parents, asking for advice. My kid and I spend time until his bedtime at 8 pm. Then I would have time do read/learn/do stuff, but most days I'm too tired and end up with Netflix. How do you motivate to get stuff done in the evenings although feeling tired/unmotivated?

Let me give some more context about this, since I summarized and simplified to fit it all into one tweet:
I am divorced, and my 8 year old boy is with me every fortnight. For the weeks he is with his mother, I’m quite good at the „being productive“ front, I get enough stuff done. But since he is with me only „half of the time“, it’s very important for me to be with him, and spend time with him when he asks for it. If he’s busy with something on his own, I’m happy to let him be. But if he asks me to do an activity together, I only rarely deny.
Netflix was just an example everybody understands without further explanation. Could be as well reading a fantasy novel or scrolling through Twitter or whatever.

Following the condensed advice & tips I got from the replies:

It is ok to not always be productive all the time and it is ok to rest. You shouldn’t feel about that.
It is also ok to not spend 100% of your time with family and kids, but to also have some time for yourself, where you do what makes you happy, what you need.

Figure out what is your peak moment. Are you an early bird or a night owl? Adapt your schedule accordingly.

Try to change some things, for example use breaks at work to do some reading. Go to another place than home to be productive.
Although it may sound counterintuitive, do some sports to boost your energy level.

Figure out, if it’s inertia, or if you’re really too tired. Make sure that you have enough sleep to not feel tired.
To get over inertia, just start, just do. If you’re really too tired, it’s ok to rest.

Consider that there are different ways of „being productive“. Look for things that are more fun than Netflix, things you are passionate about.
Choose your activities according to that. If your brain is too tired for certain activities, watching conference talks on YouTube can be a good choice. Also, keep easy tasks for when you’re tired.

Write down and prioritize what you want to do and achieve, this way it’s easier to decide what to do.
For bigger tasks, it helps to break them down. This way you can see better, what progress you’ve made.

A lot of people mentioned habits, for example to reward good habits (allow yourself for an episode of Netflix, after you’ve worked for an hour.
You should build up habits, then you can rely on them, rather then on motivation.
To help you with that, chaining or habit stacking can help (The latter is explained in „Atomic Habits“ by James Clear).


Spreadsheets to create test execution commands

In one of my current projects, I’m using Postman to check an API product which is used by multiple clients, where each client has its own URL and specific test data to be used.
It’s about a dozen postman collections (each modelling one specific use case), and those need to be tested for about 20 different clients (number is constantly growing).

For execution in our continuous integration server, we’re using Newman (the Postman command line runner). You install the newman npm package, export the collections and environment files from Postman to your hard disk, and then can run the postman checks on your command line, or on a CI system.

A Newman command basically looks like this: newman run "collection.postman_collection.json" -e "environment.postman_environment.json"

So telling newman to run the collection collection.postman_collection.json using the data from the environment file environment.postman_environment.json.
Pretty simple and straightforward.

But remember, I need this for about 12 collections for 20 different clients. Also, each client has a sandbox, user acceptance test and production environments. In addition, the commands are slightly different in my local Windows machine, compared to the CI server, which is running on Linux.
12 collections x 20 clients x 3 environments x 2 operating systems = 1,440 commands to be written!
That’s quite a lot!

So I’m using a spreadsheet to generate the commands, since this is something that can be done pretty easily with formulas. A simplified version of my spreadsheet looks like the following:

  • Column A holds the name of the collections (without the “.postman_collection.json” extension)
  • Row 1 holds the name of the postman environments (without the “.postman_environment.json” extension)

The formula in cell B2 is ="newman run """&$A2&".postman_collection.json"" -e """&B$1&".postman_environment.json""", which is the very same as the basic Newman command I explained earlier, but it is pulling the value for the collection from cell A2, and the value for the environment from cell B1.
The $ signs are telling the spreadsheet, to not change the value followed by it, when extending the formula to other cells. When extending the formula to cell C2, we still want to get the value from A2 as the environment.
I then can easily copy the commands from the spreadsheet and paste them into my command line window or wherever I need them.
The example spreadsheet is available here: Spreadsheets to create test execution commands

Hope that this might help anyone out there to maybe save some manual work and would be interested to hear how you are using spreadsheets to ease your lifeas a tester (besides from putting your test cases in there).


[Notes] Visualizing test strategies

Yesterday there was another meetup with Alex SchladebeckHuib Schoots and Bart Knaack, where I again participated in the lean coffee facilitated by Alex.
Jesper Ottosen raised the topic of „visualizing test strategies“. Since I found that topic pretty interesting, here are my (quick) notes I took during the session, for later reference.

Mirjana Andovska is creating one page test strategies/ plans, that generally „should fit into one page“, containing answers to questions like „What type of questions are answered by which (types of) tests?“, „Which problems are being solved by doing this?“ and „When are those tests run?“
She also proposes that for reporting one nowadays can easily pull data from different sources (eg. Atlassian)

Jantien van der Meer is neither creating lengthy documents (never be read) nor mind maps (not everybody like them). She says that very often architecture diagrams of the system already exists, but usually not detailed enough as you would like them for testing. She draws similar diagrams, especially containing the things relevant for testing (eg. interfaces), then highlights those parts and shares the drawings.
Jantien mentions Sonarcube and pipelines as additional sources to pull data from for reporting.

Alex Schladebeck recommends to ask „Who’s it for? Who reads it? What info do they need?“ and proposes that different versions might be needed.

Update: Jesper adds the following two models via Twitter: Visualizing Pipelines to Help Build a Quality Culture by Lisa Crispin and Ashley Hunsberger and A new model for test strategies… (An update to the Heuristic Test Strategy Model) by Dan Ashby.