Why need to bother about versioning?

Lakmal Liyanage
Quality Engineering Blog
2 min readFeb 20, 2020

--

Versioning apps/software helps to keep track of what’s been added/removed at what point. It can get real hectic especially in the early stages when you’re releasing new features and bug fixes.

Where you can keep track of this?

If you are using Github for source control then you can use git tag for version your releases. The option is available on repository under releases. From there you can just tag a commit or particular branch that you wish to add versioning. Further, you can title it and describe what includes on that version.

https://github.com/<git hub repository path>/releases/new

How to define versions?

There are multiple ways of defining versions and it depends on the organization/person who is using it.

  • [Major].[Minor].[Patch]-[Modifier if available]
v1.1.3-rc1
  • [Year].[Month].[Day].[Hour]
v2017.7.23.13
  • [Year].[Month].[Day].[Increment]
v2017.7.23.2
  • [Major].[Minor].[Last two digits of the year][Day of year number].[Increment]
v1.0.17205.1

[Major].[Minor].[Patch]-[Modifier] is the most commonly used versioning method. This type of versioning defines as follows.

  • [Major] — Increment the first digit by 1 if changes that are directly affecting external API’s and Integrations, etc..
  • [Minor] — Increment the second digit by 1 on new functionality added or changes on existing feature
  • [Patch] — Increment the last digit by 1 for bug/patch fixes
  • [Modifier] — Optional tag (‘dev’, ‘alpha’, ‘rc1’, etc…)

All other versioning types are pretty straight forward to understand.

Version control isn’t only for dev teams anymore. Applying version control for QA teams can benefit from the same as dev teams.

  • accelerate the implementation of test strategy
  • keep up and closely align with development
  • can create a record of how tests are changed and evolved with app/software
  • helpful for define QA metrics

But still, most of the QA teams are not using this as a practice. Applying version control for the QA process is not a hard thing if you are already using some form of versioning on dev teams. The only need is a trackable test management tool the same as the dev team is using source controlling tool.

Happy Testing !!!!

If you like the post, feel free to clap👏 and help others find it too.

--

--