What I learned on pre TestBash2017 Brighton meetup

Reading Time: 2 minutes


Next series of post is about my takeaways from Brighton TestBash2017 conference. First was pre TestBash meetup.

That meetup was day before workshop day. I came late, and everybody was already in the game mood. I noticed that a lot of games were played.

I joined to table with following setup. One card was on the table, three testers were asking questions, and one was answering them. Game was Dark Stories. Each card represents a puzzle in story form that is written on one side, answer is on other side. One person reads puzzle at loud and keeps answer for himself. Others try to guess the answer.

My takeaway. This is excellent game for practicing critical thinking. Answer is not obvious, so you need to do focus/defocus thinking about the puzzle. You need to have some common general knowledge in order to solve some puzzles. I played with excellent testers, and by listening their questions, I learned about their approach to puzzle problem. Pairing of testers, in this case testers tetrads, is great way to learn, test and solve a puzzle!

Second game that I observed was Otrio.  Think of it as tic-tac-toe with more dimensions. Triplet can be made with same size or different size in ascending or descending order. Each element has three sizes.

Third game was Cockroach Salad. Pace of this game is very fast. it trains your brain to think fast, as rule of games could change. You have four card type: Pepper, tomato, salad and cauliflower. For each card type, there is taboo card. You play a card and say vegetables that is on the card. But:

  • If your vegetable matches the previously played vegetable, the player must lie.
  • If your vegetable matches the claim made by the previous player (perhaps because that player lied), then the player must lie.
  • If you play a taboo card, he shouts “Cockroach!” and the next player starts a new pile next to the first one so that the taboo card remains visible.
  • If your vegetable matches a visible taboo card, he must lie.

If you can not lie and you are supposed to (nightmare of every politician!), you must pick all cards from the table. First player without cards wins.

I was in situations when I was testing application that had feature rules similar to this game. How about you?

That was it. No beer party because I need a good night sleep for workshop day. I walked back to my bed and breakfast place despite the fact that weather had changed three times since I arrived to Brighton.

Facebooktwittergoogle_plusredditpinterestlinkedinmailby feather

It is TestBash Brighton time!

Reading Time: 3 minutes


This is my personal cheat sheet for TestBash Brighton 2017 testing gathering.

Based on my previous conference experiences, I realized that I need a one stop shop reminder for conference activities. I will print out this blog post. Here it goes.

  1. Wednesday Pre-TestBash Meetup, 29-30 Surrey street, Brighton, BN1 3PA

Starts at 7.00PM but it does not designates ending time. I can be there at 9.30PM so I will need to check meetup page when I arrive.

My Google maps route:

Pool Valley Coach Station, Brighton BN1 1NJ, UK => 52 Regency Square, Brighton BN1 2FF, UK => 29 Surrey St, Brighton BN1 3PB, UK

2. Thursday workshop day

a. Morning

Agile Exploration Workshop::Alessandra Moreira

Teams practicing any flavor of agile development have different views on the role of a tester. As a test practitioner and hiring manager, I found one of the challenges we face as in the Software Test industry is that although Exploratory Testing makes its way to many resumes and conversations, not many people know what it really is, are unsure how to perform it in an agile context, and are unaware of how to execute it skillfully.

In this hands-on workshop, we will discuss what exploratory testing is by definition and will put it in practice by testing real software. We will examine how it is a perfect fit in an agile environment, and how to master the skills necessary to become an expert exploratory tester – in any team.

Hope for takeaway

My current testing project has zero documentation and by documentation I do not mean word document. I mean documentation that can be get by using various tools. For example, my current issue is that I need to test an api. In Ruby on rails project, I would use

rake routes

but there is no comparable command in client framework. I will try with security scanners, in order to find all routes with brute force. I hope that I will get some practice and ideas how to solve similar issues. In this workshop description I am confused with Agile Exploration title that switches to Exploratory Testing. I will definitely need clarification on that matter.

b. Afternoon

SOLD OUT – Critical Thinking for Testers, Programmers, and Managers::Michael Bolton

Critical thinking is the kind of thinking that specifically looks for problems and mistakes. Regular people don’t do a lot of it. However, if you want to be a great tester, you need to be a great critical thinker. The good news is that critical thinking is not just innate intelligence or a talent <— > it’s a learnable and improvable skill. Michael Bolton shares the specific techniques and heuristics of critical thinking and presents realistic testing puzzles that help you practice and increase your thinking skills.

Rapid critical thinking begins with four questions—Huh? Really? And? So?—that kickstart your brain and help you to analyze plans, specifications, risks, causes, effects, bugs, and anything else that puzzles you. Join Michael for this interactive, hands-on session and practice your critical thinking skills.

Hope for takeaway

To improve my critical thinking skills. To be able to develop my own testing puzzles.

3. TestBash Meetup – sponsored by QASymphony – 6PM conference location

3. Friday Pre-TestBash Run, 7AM, Palace pier

There is no Palace Pier in Google maps so I will need to check the actual location during Thursday. It is not clear what is run ending point, I hope that it is Conference location. My plan is to walk at pace of 4km/hour.

4. Friday conference day

Nine 30 minutes sessions will probably drain my intellectual energy by I plan to stay focus for those 270 minutes. No alcohol on Wednesday night and a minimum of seven hour of deep sleep. My accommodation heuristic was to pick the cheapest Booking offer. In Birmingham that was bad decision because I got glass braking noise wakeup at 4 AM. Hope Brighton does not do so heavy bottle recycling.

99 second talks

This how you need to do it:

Think of something to talk about
Ensure you are in a quiet location
Grab your mobile phone in landscape mode
Press record
Talk or do something for 99 seconds
Stop recording
Email the file or a place to download it to Rosie – rosie@softwaretestingclub.com

I am not sure how this will work. Shall we watch already recorded talks, or talks will be filmed on stage?

5. Hindsight TestBash Meetup 6PM, Conference location

Game meetup. Eric Davis wrote a great post about games for software testers: Using Games to Make You a Better Tester. I am bringing Batman Fluxx and Game of Set. I can also present Mastermind that requires only pen, paper and somebody to play with.

6. Saturday Open Space event by Richard Bradshaw 9.00AM

I always learn a lot at open space events. In Croatia we have annual Testival open space conference, I was at TestRetreat 2016, organized by Matt Heusser. Why this works? Because you are in the same place with smart testers and you can discuss whatever you like. By that, you learn a lot!

That it is, full steam pack of learning opportunities.  My tool is notebook with four pencils (red, green, blue and black).

Facebooktwittergoogle_plusredditpinterestlinkedinmailby feather

How to get latest nginx version for docker proxy image

Reading Time: 1 minute


In this blog post I will provide practice how to get latest nginx version aligned with docker documentation.

You have web application, and you need proxy server. You decided to go with nginx using docker. Also, you need to modify original image, so you have your own Dockerfile that is based on official docker nginx image (first line in Dockerfile is FROM nginx:latest).

Everything is set up, and after some time, you realized that your

docker build

command does not gets latest nginx version despite the fact that you have in Dockerfile

FROM nginx:latest

This was my heuristic that failed. Then I tried solution that is not aligned with docker. In Dockerfile I put:

sudo add-apt-repository ppa:nginx/stable
sudo apt-get update
sudo apt-get install nginx

because nginx docker image is based on debian linux distribution.

Doing that, local docker image got bigger than it should be.

Investigating docker documentation for build, I found following for docker build option:

--pull false Always attempt to pull a newer version of the image

By default, option is set to false. So, in order that on every build you get latest nginx docker image, you should run following cmd:

docker build –pull

Your local docker image will have optimized size, based on original Dockerfile and your application would be more secure.


Facebooktwittergoogle_plusredditpinterestlinkedinmailby feather

Randomize your test data

Reading Time: 1 minute


This post is about one important testing method that should be automated, test data randomization.

You should randomize test data in automated script because this will make your automated test runs slightly more user likely because application that you are testing will be used by different users that will use different data inputs.

Also, it is very usual that application business rules are data driven. Based on data values, feature behaves differently. Using test data randomization, you can discover and test hidden business rules.

Here is my real example. I randomized account number, and soon realized that feature behaves non deterministic. One attribute output values were different from run to run. I could not define the rule.

I asked developers in dedicated slack channel about this behavior, and they explained that this is client business rule. Based on account first digit, created record was labeled differently (output attribute value). Of course, that business rule was not documented in any form.

In my ruby testing scripts, I use Faker gem. Happy test data randomization!


Facebooktwittergoogle_plusredditpinterestlinkedinmailby feather