summaryrefslogtreecommitdiffstats
path: root/wiki/src/contribute/release_process/test/usage.mdwn
blob: 14b38922a6507e8c5104ebf7ff97af163a2d2523 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
[[!meta title="Running the automated test suite"]]

Use the `run_test_suite` script found in the Tails source root to run
all automated Cucumber test features. See the [[setup
documentation|test/setup]] in case you don't have a testing
environment yet.

It's important to note that some features only depend on the Tails
sources, and some on the actual product of the sources, i.e. a Tails
ISO image. These features are tagged `@source` and `@product`,
respectively. The arguments passed to `run_test_suite` may only affect
one of these types of features and not the other.

A typical example run of a few `@product` features could be:

    ./run_test_suite --view --capture test-0.17.webm \
        --iso path/to/tails.iso \
        features/apt.feature features/erase_memory.feature

which will test only the `iceweasel` and `erase_memory` features (if
no feature paths are given, all features in `features/cucumber` will
be tested) of the given ISO image `tails.iso` while showing the test
session in a VNC viewer (`--view`) and also capturing it into a video
called `test-0.17.web` (`--capture`). Similarly, to test a `@source`
feature, we'd simply run something like:

    ./run_test_suite features/build.feature

For full instructions, see its `--help`.

Note: since the test suite itself uses `virt-viewer` to interact with
the Tails guest you cannot use it as that will steal the session from
the test suite, leaving it with a blank screen.