summaryrefslogtreecommitdiff
path: root/test/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'test/README.md')
-rw-r--r--test/README.md26
1 files changed, 18 insertions, 8 deletions
diff --git a/test/README.md b/test/README.md
index 993a753..9ec79f5 100644
--- a/test/README.md
+++ b/test/README.md
@@ -36,14 +36,24 @@ git submodule update --init --recursive
Running the Tests
-----------------
-Before running the tests, the virtual machine must be running. It can be
-started by running `vagrant up`.
-
-The test suite can be run by running `./test`. Selected tests can be run by
-passing paths to the tests as arguments to `./test`.
-
-Tests can be run with a specific Python version by running `./test --version
-<version>` - for example, `./test --version 3.4.3`.
+Before running the tests, you must SSH into the VM. Start it with `vagrant up`
+and SSH in with `vagrant ssh`. All following commands must be run inside the
+VM.
+
+First, you must install a version of Python to test against, using `pyenv
+install -s {version}`. You can choose any version you like, e.g. `3.8.1`. It
+isn't particularly important to test against all supported versions of Python
+in the VM, because they will be tested by CI. Once you've installed a specific
+version of Python, activate it with `pyenv global {version}`.
+
+The VM mounts the Dotbot directory in `/dotbot` as read-only (you can make
+edits on your host machine). You can run the test suite by `cd /dotbot/test`
+and then running `./test`. Selected tests can be run by passing paths to the
+tests as arguments, e.g. `./test tests/create.bash tests/defaults.bash`.
+
+To debug tests, you can prepend the line `DEBUG=true` as the first line to any
+individual test (a `.bash` file inside `test/tests`). This will enable printing
+stdout/stderr.
When finished with testing, it is good to shut down the virtual machine by
running `vagrant halt`.