blob: dbf1492a76acc6be96e47ec63fc10bdabd6eef81 [file] [log] [blame]
<html devsite><head>
<title>主机控制器架构</title>
<meta name="project_path" value="/_project.yaml"/>
<meta name="book_path" value="/_book.yaml"/>
</head>
<body>
<!--
Copyright 2018 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<p>
VTS 测试框架的架构与其基于云端的测试伺服服务集成到了一起。VTS 主机控制器在主机上运行,负责控制自动化测试框架(如 TradeFed)实例,如下所示:
</p>
<p>
<img src="images/vts-host-controller.png" width alt="主机控制器架构" title="主机控制器架构"/>
</p>
<figcaption>
<strong>图 1.</strong> VTS 主机控制器架构
</figcaption>
<p>
控制器从作为 Google App Engine (GAE) 实例运行的集群命令工具中提取命令,然后在其集群命令工具和自动化测试框架实例之间传送命令和响应。
</p>
<p>该架构具有以下优势:
</p>
<ul>
<li>由于它<strong>从所有自动化测试框架实例中分离出来</strong>,因此可以控制不同类型的自动化测试框架,并且更可靠。备用设计(将主机控制逻辑嵌入到自动化测试框架中)不会阻止错误进行传播。</li>
<li>由于它采用<strong>基于提取的命令与控制 (C&amp;C) 模式</strong>,因此能够与不同类型的云端集群命令工具以及受防火墙保护的主机(用于入口连接)一起使用。备用设计(基于推送的 C&amp;C 模型)可能不允许云端命令工具访问位于专用网中的主机上的主机控制器实例。</li>
</ul>
</body></html>