本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用工作流程进行测试
在中 CodeCatalyst,您可以将测试作为不同工作流程操作(例如生成和测试)的一部分来运行。这些工作流程操作都可以生成质量报告。测试操作是生成测试、代码覆盖率、软件组成分析和静态分析报告的工作流程操作。这些报告显示在 CodeCatalyst 控制台中。
质量报告类型
Amazon CodeCatalyst 测试操作支持以下类型的质量报告。有关如何在中格式化这些报告的示例YAML,请参阅质量报告YAML示例。
测试报告
在中 CodeCatalyst,您可以配置在生成期间运行的单元测试、集成测试和系统测试。然后 CodeCatalyst 可以创建包含测试结果的报告。
您可以使用测试报告来帮助解决测试问题。如果您有来自多个版本的许多测试报告,则可以使用测试报告来查看失败率,以帮助您优化构建。
您可以使用以下测试报告文件格式:
-
黄瓜 JSON (.json)
-
JUnitXML(.xml)
-
NUnitXML(.xml)
-
NUnit3XML(.xml)
-
testng XML (.xml)
-
Visual Studio TRX (.trx、.xml)
代码覆盖率报告
在中 CodeCatalyst,您可以为测试生成代码覆盖率报告。 CodeCatalyst 提供了以下代码覆盖率指标:
- 行覆盖率
-
衡量您的测试涵盖了多少陈述。语句是一条指令,不包括注释。
line coverage = (total lines covered)/(total number of lines)
- 分支覆盖率
-
衡量您的测试涵盖了控制结构(例如
if
或case
语句)中每个可能的分支中有多少个分支。branch coverage = (total branches covered)/(total number of branches)
支持以下代码覆盖率报告文件格式:
-
JaCoCo XML(.xml)
-
SimpleCov JSON(由 simplecov 生成,而不是 simplecov
-j son,. json) -
三叶草XML(版本 3,.xml)
-
封面 (.xmlXML)
-
LCOV(.info)
软件成分分析报告
在中 CodeCatalyst,您可以使用软件组成分析 (SCA) 工具来分析应用程序的组件并检查是否存在已知的安全漏洞。您可以发现和解析详细介绍不同严重程度的漏洞和修复方法SARIF的报告。从最严重到最不严重的有效严重性值为:CRITICAL
、HIGH
、MEDIUM
、LOW
、INFORMATIONAL
。
支持以下SCA报告文件格式:
-
SARIF(.sarif,.json)
静态分析报告
您可以使用静态分析 (SA) 报告来识别源代码缺陷。在中 CodeCatalyst,您可以在部署代码之前生成 SA 报告以帮助解决代码中的问题。这些问题包括错误、安全漏洞、质量问题和其他漏洞。有效的严重性值(从最严重到最不严重)为:CRITICAL
HIGH
、MEDIUM
、LOW
、和INFORMATIONAL
。
CodeCatalyst 提供了以下 SA 指标:
- 错误
-
识别源代码中发现的许多可能的错误。这些错误可能包括与内存安全有关的问题。以下是错误的示例。
// The while loop will inadvertently index into array x out-of-bounds int x[64]; while (int n = 0; n <= 64; n++) { x[n] = 0; }
- 安全漏洞
-
识别源代码中发现的许多可能的安全漏洞。这些安全漏洞可能包括以明文形式存储您的秘密令牌之类的问题。
- 质量问题
-
识别源代码中发现的许多可能的质量问题。这些质量问题可能包括与风格惯例有关的问题。以下是质量问题的示例。
// The function name doesn't adhere to the style convention of camelCase int SUBTRACT(int x, int y) { return x-y }
- 其他漏洞
-
识别源代码中可能存在的许多其他漏洞。
CodeCatalyst 支持以下 SA 报告文件格式:
-
PyLint (.py)
-
ESLint(.js、.jsx、.ts、.tsx)
-
SARIF(.sarif,.json)