How We Manage QA in Sloboda Studio

Pavel Obod

Pavel Obod

CEO & Founder of Sloboda Studio

How We Manage QA in Sloboda Studio

Testing and software quality assurance is an integral part of any development process. The quality of how it is organized can show the professionalism of the developer company. We at Sloboda Studio, pay special attention to this component and are ready to share our successful experience with you.

Quality Assurance Stages

Pre-development stage

We begin testing before the development starts. At this stage, only a description of the functions, namely the specification (if any), documentation, mockup reviews, etc. are available. To have an idea of how to manage testing when there is actually nothing to test and decrease costs in the future, we write use studies or test cases, checklists (it usually depends on the time availability and on if there is a need to get a test documentation.)

Step-by-step testing

After the development of the new feature, we usually practice such an approach: running a smoke test, making edits, retesting or conducting a sanity testing. If after that a QA engineer believes that everything is okay and the feature is almost ready, its implementation is reviewed by the customer’s representative (acceptance testing) or a PM. If there are any objections, the feature is modified and the steps elicited earlier go once again.

Final project QA

After the final approval of the project, there is a necessity to run a full-fledged regression testing of the entire application in case other parts of the application have been affected by the updates. Also, these tests will soon reveal bugs with the integration of different code parts and features that were tested solely but may not operate properly when given in a system.

How Do We Run Testing: the Detailed Plan

Static testing

This includes all QA activities which can be conducted without running the code (such as, for instance, when there is no written code yet available). Instead, the documentation, mockups, design are available, so we can start a documentation review. In fact, there are many types of such a review (like a walkthrough or formal inspection), but we use just basic review most often.

When this part is finished, but code writing is still ongoing, you can start creating test artifacts, such as test plan, checklists, test cases, optimizing them now to have more time for comprehensive testing in future. The most widespread strategy of our company is to create checklists applying relevant test design strategies and then, if there are adequate requirements available, building a traceability matrix, optimized in a way one could easily find a requirement the particular test case tests.

One more important activity is a prototype testing. As usually there is nothing else to test except the design in a prototype, we testing its UI/UX issues. In some cases, we can apply unit testing if some small parts of the app are already implemented in a prototype.

Basic tests

There are three classic stages of basic testing.

Smoke testing is aimed to ensure the app performs its immediate function (that is, the most important functionality, which makes the existence of the product inconsistent). It could include both functional and nonfunctional testing.

Critical path testing tests the essential user stories, the features most of the users will use daily, without some special cases.

Extended path testing tests all the features and all the stories available, so it takes much more time compared to the previous stages. It is aimed to find rare but critical bugs, that can destroy the system or damage it greatly. Although, the time on it can be reduced if the app changes quickly and releases updates too often.

Stabilization

Stabilization is not the same thing as stability testing, as you may think. On this stage, there are much less critical issues, but still, it is unavoidable. What should it include?

Best Tools for Working App Integrations:

Issues monitoring Newrelic, Rollbar
Alert systems Blazer, Logentries, Newrelic
Requests monitoring Newrelic, Skylight.io
Log monitoring Logentries
Feature autotests Allure Test Report
Cross browser testing Browserstack, Cross-browser testing

Summary

Each team develops its own style of testing, based on past experience or project needs. However, there are techniques that everyone can take a note of. We tried to collect precisely such approaches in this article. Sloboda Studio wishes you success in the implementation of your projects!

Leave a Reply

Your email address will not be published. Required fields are marked *

Join our Newsletter