Picturq by Author. (2022)

Cucumber value-stream mapping mechanics in Test Automation

Olli Kulkki
Quality lives
Published in
2 min readApr 2, 2023

--

Cucumber and its natural expression language Gherkin where we describe the background, given the conditions, when an action is taken and then a consequence is observed is full of mechanics that you don’t really come to think of in your first years of using it.

Value-stream mapping, also known as information-flow mapping is a lean-management method for analyzing the current state and designing a future state for the series of events that take a product or service from the beginning of the specific process until it reaches the customer.

You can study the Gherkin reference here https://cucumber.io/docs/gherkin/reference/

Independent of your automation programming language, you can empower the capabilities of these natural expressions through embedded properties, variables that are passed as parameter from the command line, or your cucumber.yml configuration file. This enables you to model value-streams for your testing context.

You store your user data in a user.json. You store your transaction data in a data.json. You store your expected outcomes and error messages in a outcome.json. You store your hostnames and url locations in environments.json.

command line

cucumber.yml

  • myScenario: -p myIdentity -p myOutcome -p myEnvironmentSetup
  • myIdentity: CLIENT=”Bobby Drop Tables” EMPLOYEE=”District manager”
  • myOutcome: OUTCOME=”Five travellers receive flight tickets via email”
  • myEnvironmentSetup: EMAIL=”Gmail” ENVIRONMENT=”Production”

With this type of abtractions you can define value-streams and use multiple combinatorics on the test execution layer with less gherkin scenarios that you have to write. Value-stream mapping has supporting methods that are often used in Lean environments to analyze and design flows at the system level across multiple processes.

You can study Value-stream mapping here https://kanbanize.com/lean-management/value-waste/value-stream-mapping

The author wishes to help the development environment hold the weather and reduce the number of disappointments experienced by millions of people in everyday life.

Originally published at https://www.linkedin.com.

--

--

Olli Kulkki
Quality lives

Eat the delicious food. Walk in the sunshine. Jump in the ocean. Be silly. Be weird. Do crazy stuff. Write Ruby. Run Cypress. Build on Jenkins.