docs: update CONTRIBUTING.md to include information about Makefile
@@ -30,22 +30,29 @@ Currently, we require new PRs to compile without warnings, pass `cargo fmt` and
## Testing
-The easiest way to setup a running Scylla instance is to use the [Scylla Docker image](https://hub.docker.com/r/scylladb/scylla/):
-You need a running Scylla instance for the tests.
-
-Execute the commands below to run the tests:
+A 3-node ScyllaDB cluster is required to run the tests.
+The simplest way to set it up locally is to use a `docker-compose`.
+Fortunately there is no need to invoke `docker-compose` manually, everything can be handled by our `Makefile`.
+To run a cargo test suite, use the command below (note that you must have docker and docker-compose installed):
```bash
-# Downloads and runs Scylla in Docker
-docker run --name scylla-ci -d scylladb/scylla
-
-# Run all tests
-SCYLLA_URI="$(docker inspect --format='{{ .NetworkSettings.IPAddress }}' scylla-ci):19042" cargo test
+make test
```
-
When on non-Linux machine, however, it can be impossible to connect to containerized Scylla instance from outside Docker.\
-In that case, we provide scripts for running tests inside another Docker container, located at `scripts/tests_in_docker`.\
-Please refer to README there.
+If you are using macOS, we provide a `dockerized-test` make target for running tests inside another Docker container:
+```bash
+make dockerized-test
+````
+If working on Windows, run tests in WSL.
+
+The above commands will leave a running ScyllaDB cluster in the background.
+To stop it, use `make down`.\
+Starting a cluster without running any test is possible with `make up`.
+
+## CI
+
+Before sending a pull request, it is a good idea to run `make ci` locally (or `make dockerized-ci` if on macOS).
+It will perform a format check, `cargo check`, linter check (clippy), build and `cargo test`.
## Contributing to the book
