README.md
1 # Wi-Fi RTT (IEEE 802.11mc) Integrated (ACTS/sl4a) Test Suite
2
3 This directory contains ACTS/sl4a test scripts to verify and characterize
4 the Wi-Fi RTT (IEEE 802.11mc) implementation in Android.
5
6 There are 2 groups of tests (in 2 sub-directories):
7
8 * functional: Functional tests that each implementation must pass. These
9 are pass/fail tests.
10 * stress: Tests which run through a large number of iterations to stress
11 test the implementation. Considering that some failures are expected,
12 especially in an over-the-air situation, pass/fail criteria are either
13 not provided or may not apply to all implementations or test environments.
14
15 The tests can be executed using:
16
17 `act.py -c <config> -tc {<test_class>|<test_class>:<test_name>}`
18
19 Where a test file is any of the `.py` files in any of the test sub-directories.
20 If a test class is specified, then all tests within that test class are executed.
21
22 ## Test Beds
23 The Wi-Fi RTT tests support several different test scenarios which require different test bed
24 configuration. The test beds and their corresponding test files are:
25
26 * Device Under Test + AP which supports IEEE 802.11mc
27 * functional/RangeApSupporting11McTest.py
28 * functional/RttRequestManagementTest.py
29 * functional/RttDisableTest.py
30 * stress/StressRangeApTest.py
31 * Device Under Test + AP which does **not** support IEEE 802.11mc
32 * functional/RangeApNonSupporting11McTest.py
33 * 2 Devices Under Test
34 * functional/RangeAwareTest.py
35 * functional/AwareDiscoveryWithRangingTest.py
36 * functional/RangeSoftApTest.py
37 * stress/StressRangeAwareTest.py
38
39 ## Test Configurations
40 The test configuration, the `<config>` in the commands above, is stored in
41 the *config* sub-directory. The configuration simply uses all connected
42 devices without listing specific serial numbers. Note that some tests use a
43 single device while others use 2 devices.
44
45 The only provided configuration is *wifi_rtt.json*.
46
47 The configuration defines the following keys to configure the test:
48
49 * **lci_reference**, **lcr_reference**: Arrays of bytes used to validate that the *correct* LCI and
50 LCR were received from the AP. These are empty by default and should be configured to match the
51 configuration of the AP used in the test.
52 * **rtt_reference_distance_mm**: The reference distance, in mm, between the test device and the test
53 AP or between the two test devices (for Aware ranging tests).
54 * **stress_test_min_iteration_count**, **stress_test_target_run_time_sec**: Parameters used to
55 control the length and duration of the stress tests. The stress test runs for the specified number
56 of iterations or for the specified duration - whichever is longer.
57