本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 AWS IoT Greengrass 测试框架
Greengrass 测试框架 (GTF) 是一系列从客户角度支持自动化的构建模块。 end-to-endGTF 使用 Cuc u
GTF 是使用 Cucumber(一种用于运行自动测试的工具)实现的,以鼓励组件的行为驱动开发 (BDD)。在 Cucumber 中,该系统的功能在一种名为的特殊文件类型中概述feature
。每个功能都以一种人类可读的格式描述,称为场景,这些规范可以转换为自动测试。每个场景都概述为一系列步骤,这些步骤使用一种名为Gherkin的特定领域语言来定义被测系统的交互和结果。使用一种名为步骤定义的方法将 Gherkin
主题
工作方式
AWS IoT Greengrass 将 GTF 作为由多个 Java 模块组成的独立 JAR 分发。要使用 GTF end-to-end 测试组件,必须在 Java 项目中实现测试。将测试可用 Jar 作为依赖项添加到 Java 项目中,可以使用 GTF 的现有功能,并通过编写自己的自定义测试用例对其进行扩展。要运行自定义测试用例,您可以构建 Java 项目并使用中所述的配置选项运行目标 JAR Greengrass 测试框架配置选项。
GTF 独立版 JAR
Greengrass 使用 Cloudfront 作为 Maven 存储库来托管不同
GTF 独立 JAR 包括以下模块。它不仅限于这些模块。您可以在项目中单独选择每个依赖项,也可以将所有这些依赖项同时包含在测试的独立 JAR 文件中
-
aws-greengrass-testing-resources
:此模块为在测试过程中管理 AWS 资源的生命周期提供了抽象。你可以用它来使用ResourceSpec
抽象来定义你的自定义 AWS 资源,这样 GTF 就可以为你创建和删除这些资源。 -
aws-greengrass-testing-platform
:此模块为测试生命周期中的被测设备提供平台级抽象。它包含用于与独立于平台的操作系统交互的 API,并可用于模拟在设备外壳中运行的命令。 -
aws-greengrass-testing-components
:此模块由用于测试 Greengrass 核心功能(例如部署、IPC 和其他功能)的示例组件组成。 -
aws-greengrass-testing-features
:此模块由可重复使用的常用步骤及其定义组成,用于在 Greengrass 环境中进行测试。
更改日志
下表描述了每个版本的 GTF 中的更改。如需了解更多信息,请参阅上的 GTF 版本页面
版本 |
更改 |
---|---|
1.2.0 |
|
1.1.0 |
|
1.0.0 |
初始版本。 |