| // Copyright 2019 The Chromium OS Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| syntax = "proto3"; |
| |
| package testplans; |
| |
| option go_package = "go.chromium.org/chromiumos/infra/proto/go/testplans"; |
| |
| import "google/protobuf/wrappers.proto"; |
| |
| message TestSuiteCommon { |
| // Human-readable consistent name for a build target, test type pair. |
| string display_name = 1; |
| |
| // Whether or not the test suite is considered critical. |
| google.protobuf.BoolValue critical = 2; |
| |
| message TestSuiteGroup { |
| string test_suite_group = 1; |
| } |
| // A list of groups to which this test suite belongs. |
| // This is a key into other testingconfig modules. |
| repeated TestSuiteGroup test_suite_groups = 3; |
| |
| // Whether this suite should be disabled by default. It will only be enabled |
| // if some other rule forces it to be put into the test plan. |
| bool disable_by_default = 4; |
| } |
| |
| message HwTestCfg { |
| enum HwTestSuiteType { |
| HW_TEST_SUITE_TYPE_UNSPECIFIED = 0; |
| AUTOTEST = 1; |
| TAST = 2; |
| } |
| // Configuration for a hardware test suite. |
| message HwTest { |
| TestSuiteCommon common = 12; |
| |
| // Name of the test suite to run. |
| string suite = 1; |
| // The key that identifies a distinct type of device in Skylab. |
| // Skylab uses the term "board", hence use of this otherwise controversial |
| // word. |
| // e.g. could use device_target 'caroline' to test the build_target |
| // 'caroline-arcnext'. |
| string skylab_board = 11; |
| |
| // Key that further specifies the device to test on in Skylab. |
| // e.g. for skylab_board 'octopus', may require skylab_model 'ampton' |
| string skylab_model = 15; |
| |
| HwTestSuiteType hw_test_suite_type = 13; |
| |
| // The swarming pool in which to run the test suite, e.g. DUT_POOL_QUOTA. |
| string pool = 14; |
| |
| reserved 2 to 10; |
| } |
| |
| repeated HwTest hw_test = 1; |
| } |
| |
| message TastVmTestCfg { |
| message TastTestExpr { |
| // A single tast test expression. See https://goo.gl/UPNEgT |
| string test_expr = 1; |
| } |
| message TastVmTest { |
| TestSuiteCommon common = 4; |
| |
| // String containing short human-readable name describing test suite. |
| string suite_name = 1; |
| // List of string expressions describing which tests to run; this |
| // is passed directly to the 'tast run' command. See |
| // https://goo.gl/UPNEgT for info about test expressions. |
| repeated TastTestExpr tast_test_expr = 2; |
| |
| reserved 3; |
| } |
| |
| repeated TastVmTest tast_vm_test = 1; |
| } |
| |
| message VmTestCfg { |
| message VmTest { |
| TestSuiteCommon common = 8; |
| |
| // Test suite to be run in VMTest. |
| string test_suite = 2; |
| |
| reserved 1, 3 to 7; |
| } |
| |
| repeated VmTest vm_test = 1; |
| } |
| |
| |
| // Specifies a CrOS builder to target. |
| message TargetCriteria { |
| // DEPRECATED: we need to target builder_name instead. build_target |
| // has to go away. See https://crbug.com/1016536 |
| oneof target_type { |
| // Any CrOS build target, such as "kevin". This should correspond to a |
| // Portage overlay. |
| string build_target = 2; |
| } |
| // A CrOS builder to target for testing, e.g. eve-postsubmit or |
| // amd64-generic-kernel-v5_4-cq. |
| string builder_name = 3; |
| } |
| |
| // Details which testing is needed for a single CrOS build target. |
| message PerTargetTestRequirements { |
| // Specifies the crieria for builds to target for testing. |
| TargetCriteria target_criteria = 1; |
| |
| // These configure what testing is needed for these BuildCriteria. |
| HwTestCfg hw_test_cfg = 3; |
| VmTestCfg vm_test_cfg = 5; |
| TastVmTestCfg direct_tast_vm_test_cfg = 7; |
| |
| reserved 2, 4, 6; |
| } |
| |
| // A listing of all testing that should be done for all CrOS builds. |
| message TargetTestRequirementsCfg { |
| // The testing that should be performed for a single set of target criteria. |
| repeated PerTargetTestRequirements per_target_test_requirements = 1; |
| } |
| |