QaraTMS is an open source test management software for managing test suites, test cases, test plans, test runs and documentation.
- You need to have php ^8.1, mysql-8 or SQLite, composer installed.
- Pull the project from GitHub.
- Create a database named
tms
usingutf8_general_ci
, or you can use SQLite. - Run
composer install
orphp composer.phar install
- Copy and rename the
.env.backup
file to.env
and fill the database information. - Run
php artisan key:generate
- Run
php artisan migrate
- Run
php artisan db:seed --class=AdminSeeder
to create admin user and assign permissions. - Run
php artisan serve
- You can now access QaraTMS at http://localhost:8000
- Login with default email and password - admin@admin.com / password
- Go to Users page and change default email and password.
If you are using SQLite:
- Create database.sqlite file in ./database folder
- Copy and rename the
.env_sqlite.backup
file to.env
and fill the database information.
This project is configured to use the laravel-ide-helper. To generate the helper files run these commands:
Windows:
php artisan ide-helper:generate; php artisan ide-helper:models --write-mixin; php artisan ide-helper:meta; php artisan ide-helper:eloquent
- Install docker and docker-compose
- Make docker-run.sh file executable
sudo chmod +x docker-run.sh
and run./docker-run.sh
- Or
docker compose up -d --build
and on the first run or after clearing the database or its volumedocker exec app php artisan migrate
anddocker exec app php artisan db:seed --class=AdminSeeder
to create the admin user and assign permissions
- To access advanced configuration, refer to the extended documentation
- Create a Project.
- Create a Test Repository. Test suites and test cases are located inside test repositories.
You can create several test repositories for different project modules e.g. web, admin, API, etc.
- Add test suites and test cases to the test repository.
- Create a test plan and select the test cases you need to test.
- Start new test run.
- Also, there is documentation module where you can store your project's documentation.
Please contribute using GitHub Flow. Create a branch, add commits, and open a pull request.
When a model is updated, the helper files for it must be regenerated to provide autocompletion inside the source code. To do so, run this command:
php artisan ide-helper:models -M
Before running tests locally you need to initialize the testing environment database using
php artisan migrate --env=testing
after that is done, you can run the tests using
php artisan test
The
testing
environment is automatically applied when runningphp artisan test
so the tests use the .env.testing file as the configuration.
To evaluate the code coverage, xdebug must be installed and its mode must contain coverage
. After that, you can
execute the tests with code coverage analysis enabled using
php artisan test --coverage
QaraTMS is licensed under the MIT license.