TL;DR
In this post, we present you the story behind the Testivator, Session-Based Test Management Tool.
The Story
Software testers should be able to tell a story. This time, the story is about the Exploratory Testing Tool. It all started in 2016 with this great article by James Bach, Session-Based Test Management. My initial thought was that it would be great to have Github for software testers. Something where software testers could tell a story of how they test. And session-based test management session reports could be software tester’s source code.
At that time, I knew Ruby On Rails, a trendy Web Framework for the Ruby language. But as I tested several solutions for my clients developed in Ruby On Rails, I knew that with Ruby On Rails, you can very quickly create a Minimal Viable Product (MVP). But Ruby On Rails is not so great at the performance.
As I skim each morning through Hackernews RSS feed, I stumbled upon Phoenix Framework. It is based on Elixir functional programming language that runs on BEAM virtual machine. The same machine that runs Ericsson telephone switches. As I had worked for thirteen years for Ericsson, I know that BEAM is a masterpiece of engineering effort.
I made a rookie mistake, and I started immediately with Phoenix Framework. I soon hit the learning wall and started from scratch. Let’s first learn Elixir. Google returned Elixir School online resources that I found very hard to follow. Then I started with three books:
- Programming Elixir 1.2 by Dave Thomas
- Programming Phoenix by Chris McCord, Bruce Tate, and Jose Valim
- Phoenix Inside Out Book by Shankar Dhanasekaran
With more than full-time Freelance project engagements, the learning curve was slow, but I was making progress. The turning point was in March 2020. My plan was to have a first Testivator release by September 1st, 2020, but the official release is December 1st.
Tech Stack
Here is the tech stack that makes Testivator possible:
- Elixir
- Phoenix
- AWS S3
- PostgreSQL
- Github Actions
- Gigalixir
- Cluster Of Two BEAM Instances
- Mobile Application for Android and iOS, Apache Cordova, ReactJS, Redux.
Mobile Application
Mobile application development is outsourced to a Thespian agency. If you need professional software development services, I strongly suggest considering this highly professional software developer group.
Feature Stack
On open sessions that were part of TestBash Brighton 2017, I attended a session facilitated by Simon Thomes. We provided Simon feedback on which features we would like to have in the Exploratory session tool that he plans to implement. In this session, I decided what a feature set for Testivator MVP is. You can read about the Testivator feature set by going to its home page.