framework: Add reworked framework to repo
[vswitchperf.git] / docs / quickstart.md
1 # Getting Started with 'vsperf'
2
3 ## Installation
4
5 Follow the [installation instructions] to install.
6
7 ---
8
9 ## Configure the `./conf/10_custom.conf` file
10
11 The supplied `10_custom.conf` file must be modified, as it contains
12 configuration items for which there are no reasonable default values.
13
14 The configuration items that can be added is not limited to the initial
15 contents. Any configuration item mentioned in any .conf file in `./conf`
16 directory can be added and that item will be overridden by the custom
17 configuration value.
18
19
20 ## Using a custom settings file
21
22 Alternatively a custom settings file can be passed to `vsperf` via the
23 `--conf-file` argument.
24
25 ```bash
26 ./vsperf --conf-file <path_to_settings_py> ...
27 ```
28
29 Note that configuration passed in via the environment (`--load-env`) or via
30 another command line argument will override both the default and your custom
31 configuration files. This "priority hierarchy" can be described like so (1 =
32 max priority):
33
34 1. Command line arguments
35 2. Environment variables
36 3. Configuration file(s)
37
38 ---
39
40 ## Executing tests
41
42 To list the available tests:
43
44 ```bash
45 ./vsperf --list-tests
46 ```
47
48 To run a group of tests, for example all tests with a name containing
49 'RFC2544':
50
51 ```bash
52 ./vsperf --conf-file=user_settings.py --tests="RFC2544"
53 ```
54
55 To run all tests:
56
57 ```bash
58 ./vsperf --conf-file=user_settings.py
59 ```
60
61 Some tests allow for configurable parameters, including test duration (in
62 seconds) as well as packet sizes (in bytes).
63
64 ```bash
65 ./vsperf --conf-file user_settings.py
66     --tests RFC2544Tput
67     --test-param "rfc2544_duration=10;packet_sizes=128"
68 ```
69
70 For all available options, check out the help dialog:
71
72 ```bash
73 ./vsperf --help
74 ```
75
76 ---
77
78 [installation instructions]: installation.md
79