tree: 2b583bfa529174c15355b6f4010a09bf84a2b59e [path history] [tgz]
  1. report_result/
  2. run_integration_tests/
  3. run_test/
  4. test/
  5. BUILD.gn
  6. README.md
bin/test_runner/README.md

Test Runner for Integration Tests

run_integration_tests is a binary that can execute a command line in an environment that provides services that allow multiple test components to orchestrate joint asynchronous distributed flows of control. It is used for integration tests of the modular framework, for example.

Multiple such command lines can be configured in a single configuration file.

Test Config Description

The JSON file specified by --test_file parameter looks similar to this:

{
  "tests":[
    {
      "name":"dummy_user_shell",
      "exec":"device_runner --ledger_repository_for_testing --device_shell=dummy_device_shell --user_shell=dummy_user_shell"
    },
    {
      "name":"parent_child",
      "exec":"device_runner --ledger_repository_for_testing --device_shell=dummy_device_shell --user_shell=dev_user_shell --user_shell_args=--root_module=/system/test/modular_tests/parent_module"
    }
}

The top-level tests field is a list of tests to run, sequentially. Each test is an object with the following fields:

  • name
    • A string field identifying the test. Required.
  • exec
    • A string with the command representing the test to run. This will be run in a new application environment with a TestRunner service, which some part of the test is expected to use to report completion.
  • disabled
    • If this field is present, the test is not executed.