• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright 2021 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
5syntax = "proto3";
6
7package chromiumos.test.api;
8
9option go_package = "go.chromium.org/chromiumos/config/go/test/api";
10
11// Defines an atomic unit of test work that's independently executable.
12//
13// Test cases are the atomic building blocks used to define/generate test plans
14// and then ultimately scheduling units of work (batched or independent).
15//
16// Test case definitions can come from any execution workflow/environment.
17// E.g. Automated test cases will generally be defined/reported by the
18//      various test-drivers (e.g. Tast/Tauto/...) at build time.
19//
20//      Manual test cases will be defined/managed directly in starlark config
21//      and then act as the building blocks for manual test planning/scheduling.
22//
23// Test cases also are the atom at which test results can be reported.
24message TestCase {
25  // Globally unique (for ChromeOS) string id for a given test case.
26  Id id = 1;
27  message Id {
28    string value = 1;
29  }
30  // Human friendly name
31  string name = 2;
32
33  // Tags associated with a given test case, which drive scheduling logic
34  // based on tag inclusion or exclusion criteria.
35  repeated Tag tags = 3;
36  message Tag {
37    string value = 1;
38  }
39
40  // Dependencies for a given test cases, which drive scheduling logic for
41  // dut matching.
42  repeated Dependency dependencies = 4;
43  message Dependency {
44    string value = 1;
45  }
46
47  // BuildDeps for a given test cases, which drive test filtering logic for
48  // scheduling.
49  repeated BuildDeps build_dependencies = 5;
50  message BuildDeps {
51    string value = 1;
52  }
53}
54
55// List of globally unique test case identifiers
56message TestCaseIdList {
57  repeated TestCase.Id test_case_ids = 1;
58}
59
60message TestCaseList {
61  repeated TestCase test_cases = 1;
62}
63