QaraTMS – open source test management system
Hi all!
In this article, I would like to talk about a project I am currently working on.
QaraTMS is an open source system for test management, test case management and test documentation.
A little background:
Initially, test cases were stored in TestRail, but the project is not very large, so after a while most of the functionality was covered by auto tests.
In the test documentation, there are mostly checklists, a few test cases, plus documentation on the functionality of the admin panel, test scripts, and other modules and tools. TestRail began to be used simply as a documentation repository. It was somehow inexpedient to pay for this, so they decided to abandon TestRail.
There was a need to store test documentation somewhere.
Paid services disappear immediately, storing test cases in google sheets or excel has always seemed inconvenient, especially if there are a lot of cases.
Free systems are outdated and look like google sheets are better.
Therefore, the idea came up to write your own open source TMS, collect all the best from paid systems and get rid of their minuses.

In my opinion, the main disadvantages of test management systems are:
Prices
Overloaded interface and functionality – for example, in one of these systems, in the form of creating a test case, there are as many as 20 fields. Or a pop-up form in the test run, in which you need to specify the result of passing the test, every time, even if the test passed. What if there are hundreds of tests? How long will it take to close this form each time?
There is no documentation storage module. For tests, documentation is also sometimes needed, for example, a description of test scripts, settings in the admin panel. And the editor that is in the form of test cases is not suitable for creating and editing full-fledged documents.
And just my desire to be able to store information locally and not depend on third-party services. Suddenly it will close in a year, change the terms of use or decide that it is no longer going to work in some country.
QaraTMS
Repository on GitHub. The project is written in Laravel, designed for small teams and is currently in beta.
The main ideas are:
Intuitive interface.
Convenient storage of test cases, test suites, checklists, convenient editor.
A separate documentation module is required. One place to store test documentation and project documentation.
Automation – now you can select only the type of test case – manual or automated. The repository indicates how many cases were automated. Convenient graphs are planned to understand what% of the functionality is covered by auto tests and an API for running auto tests.
Minimalism and nothing more.
How to work with QaraTMS
First created project. There are some project statistics on the dashboard page.

Then created repository / repository for test documentation – test suites and test cases.
There can be several of them, for example, for different project modules – the main web application, admin panel, API, mobile application, etc.

The test repository creates test suites and test cases. There is no normal editor yet, but there is support markdown markup.

When there is test cases, you can create test plan. For example, Full Regression, test plan for the most important functionality, etc.
In the test plan, a repository and test cases are selected that will be checked.

After creating a test plan, you can run run test for the selected plan and check the selected test cases. After selecting a status for a case, the next untested test case is loaded immediately.

There is also a documentation module.

Current issues:
There are definitely bugs.
There is no experience in front-end development and understanding of how to do it right and with a modern approach. We need a front-end developer to redesign the repository page, add a convenient test suite tree, drag and drop sorting.
No sorting of test cases.
It is not yet possible to upload files in the test case editor.
Plans
Get feedback, ideas, especially from those who are engaged in manual testing – how convenient everything is, what is missing.
Add registration, roles, user rights.
Refactoring the test suite tree, drag and drop sorting
Improvement of the test case editor.
API for autotests. The ability to run a run test via the API and specify the status for autotests (passed / failed)
Jira integration