• Home
  • History
  • Annotate
Name
Date
Size
#Lines
LOC

..--

README.mdD22-Nov-20232.2 KiB5238

__init__.pyD22-Nov-20230 10

action_context.pyD23-Nov-20231.7 KiB4338

actions.pyD23-Nov-202316.8 KiB505412

actions_unittest.pyD23-Nov-20239.9 KiB233189

cfm_test.pyD22-Nov-2023688 2417

configurable_cfm_test.pyD23-Nov-20233.5 KiB10381

configurable_cfm_test_unittest.pyD22-Nov-20231.9 KiB4838

configuration.pyD22-Nov-2023712 1816

dsl.pyD22-Nov-2023548 1410

scenario.pyD22-Nov-2023519 2116

README.md

1 # Configurable CfM Tests
2 
3 The Configurable CfM Tests modules allow creating test scenarios using an API
4 that clearly describes the steps executed. A sample of a configurable CfM test
5 is:
6 
7     CfmTest(
8         scenario=Scenario(
9             CreateMeeting(),
10             RepeatTimes(5, Scenario(
11                 MuteMicrophone(),
12                 UnmuteMicrophone()
13             )),
14             LeaveMeeting(),
15             AssertUsbDevices(ATRUS),
16             AssertFileDoesNotContain('/var/log/messages', ['FATAL ERROR'])
17         ),
18         configuration=Configuration(
19             run_test_only = False
20         )
21     )
22 
23 This test creates a meeting, mutes and unmutes the microphone five times and
24 leaves the meeting. It then verifies that an ATRUS device is visible and that
25 the log file `/var/log/messages` does not contains `FATAL ERROR`.
26 
27 A configurable test can be setup in a `control` file so that third parties
28 that have no easy way to modify other source code can create and modify
29 such tests.
30 
31 For the test to be executed properly it has to subclass [`autotest_lib.server.cros.cfm.configurable_test.configurable_cfm_tests.ConfigurableCfmTest`](https://chromium.googlesource.com/chromiumos/third_party/autotest/+/master/server/cros/cfm/configurable_test/configurable_cfm_test.py).
32 
33 ## Actions
34 
35 Each step in a scenario is an Action. The available actions are listed in
36 [`autotest_lib.server.cros.cfm.configurable_test.actions`](https://chromium.googlesource.com/chromiumos/third_party/autotest/+/master/server/cros/cfm/configurable_test/actions.py).
37 
38 ## Configuration
39 
40 Besides Actions, a test can be configured with configuration params that affect
41 behavior outside of the actions. The available configuration flags are
42 documented in
43 [`autotest_lib.server.cros.cfm.configurable_test.configuration`](https://chromium.googlesource.com/chromiumos/third_party/autotest/+/master/server/cros/cfm/configurable_test/configuration.py).
44 
45 ## Samples
46 
47 For complete samples see the Autotest
48 [`enterprise_CFM_ConfigurableCfmTestSanity`](https://chromium.googlesource.com/chromiumos/third_party/autotest/+/master/server/site_tests/enterprise_CFM_ConfigurableCfmTestSanity/)
49 that we use to test the framework itself.
50 
51 
52