How to save time and nerves QA?
Kickstarting a blog by landing the first ever article may not seem like a big deal but it honestly feels somewhat theatrical!
My name is Zlata and I am a QA engineer.
In this article I would like to share how I reduce the time for testing using Kodibox.io and demonstrate the process in details.
Hope you’ll find it practically helpful!
A quick intro before we dig into the details:
Kodibox is an auxiliary platform that allows to deploy environments with dynamic application configuration with few clicks. The only thing required to use it is to? perform the initial configuration of the account after registration. The logic that I am clearly obsessed with is the idea of: one task - one isolated environment.
We all operate with the same testing principal:
Each task must be tested on a test/integration environment that is close to production before being rolled out to the prod. Often such an environment is called Stage or Int. Usually they are deployed in a single instance and that’s when you start witnessing the rise of questionable moments.?
If I had to describe my day to day life as a QA before finding out about Kodibox:
To sum up - at the best I used to spend 90 minutes to accomplish one single task, 1 hour of which was spent on communication and waiting for the availability of the stage.
The most common problems when preparing the environment for testing:
A bit of an outro information before I show off how the current picture looks like with Kodibox:
And what is looks like testing with Kodibox here:
We roll out accomplished tasks to the prod when they are ready.
One of the tasks that we’re working on currently is about the redesignation of the launching button (KV-965 on Jira). I will demonstrate my testing process using Kodibox.io
First, our front-end developer Daniil Manevich took this task into work, implemented it and informed me that it was ready for testing, saying that his branch was called ‘feature-sticky-save’. I need the name of the branch to create an environment with its changes.
Since integration with JIRA is still in our plans, I will note one cool life hack. You can name a branch during development as well as the number of the task that is being implemented. This makes it easier to understand which version of the application should be used when creating an environment for testing a specific feature. Our team is not big and there is no such need.
In order to test the KV-965 task, I need to build an environment with the kodibox-interception-billing application and the feature-sticky-save tag.
Kodibox platform has a microservice architecture and consists of 8 services. Each service has different dependencies on other services - I choose the exact application needed for testing, and the platform determines all the necessary dependencies by itself.
To do this, I go to the Environments tab and click Create new.
领英推荐
Then I select the kodibox-interception-billing application under test. All its dependencies were also automatically selected.
I want to test feature-sticky-save branch - I select a specific application image and leave everything else by default. Next to the kodibox-interception-billing application that I need - I click the Edit button. I change the tags and save the changes using the Save button.
By the way, the platform suggests the last 10 tags, so it can help you find the one you need. And if the selected tag does not exist, the platform will also report about it.
The creation of the environment has begun. It usually takes about 3-5 minutes.
YAY! The environment is successfully assembled - I see the status “Running".?
I get the endpoint of the created environment and access via https.
Then I can use the received link for manual testing, for testing the API using Postman, as well as for running autotests.
Now, to check the KV-965 task in the created environment, I go to the Create application section. I see the changes - the Create button is over, which was required to be done.
And so it was before the changes - the button is at the bottom, and you need to scroll to it:
I will need to run a few more tests to check if the button is “floating”, adding applications with a large number of images to the Docker Compose field, which expands the field. I'll check if the layout on mobile is running - all using Postman for regression and Selenide to run autotest to see how the UI works.
Thus, after testing, we can assume that the task is completed, I send it to Code Review.
Also, I don't need to worry about the created environment, since Kodibox itself will delete it as soon as the lifetime expires.
To sum up results using Kodibox:
Conclusion points:?
In my opinion, Kodibox saves me time, emotional wellbeing, and also improves the microclimate in the team.