github.com/nya3jp/tast@v0.0.0-20230601000426-85c8e4d83a9b/src/go.chromium.org/tast/core/internal/runner/doc.go (about)

     1  // Copyright 2017 The ChromiumOS Authors
     2  // Use of this source code is governed by a BSD-style license that can be
     3  // found in the LICENSE file.
     4  
     5  /*
     6  Package runner provides functionality shared by test runners.
     7  
     8  Test runners are executables that run one or more test bundles and
     9  aggregate the results. Runners are executed by the tast command.
    10  
    11  local_test_runner executes local bundles on-device, while remote_test_runner
    12  executes remote bundles on the system where the tast command is running
    13  (e.g. a developer's workstation).
    14  
    15  The tast command writes a JSON-marshaled RunnerArgs struct to a runner's stdin,
    16  which instructs the runner to report progress by writing JSON-marshaled
    17  control messages to stdout. In this mode, the runner exits with status code
    18  0 in almost all cases (the one exception being malformed arguments), since
    19  the result of the run is already communicated via control messages.
    20  
    21  When a test runner is executed manually in conjunction with command-line
    22  flags, the runner instead logs human-readable progress to stdout. The runner
    23  exits with a nonzero status code if an error is encountered.
    24  */
    25  package runner