章节目录:
概要
测试影响分析(TIA)功能可分析被测应用程序(AUT)的覆盖率数据,并查明自上次构建以来,哪些测试受到了变更的影响。以下内容概述了测试影响分析的流程:
- 配置 SOAtest 随附的覆盖率代理(agent.jar),并将其附加到 AUT。
- 配置您的设置,使 SOAtest 与代理通信,以创建基线覆盖率报告。
- 使用新配置运行完整的测试套件,收集有关测试用例覆盖率的信息,并生成基线覆盖率报告。
- 运行受变更影响的测试。运行一个执行 SOAtest 的作业,并通过 -impactedTests 参数传递基线覆盖率报告,以运行受变更影响的测试。这通常是 CI/CD 管道的一部分,用于快速验证代码变更。
配置
TIA 分析旨在作为自动化过程的一部分实施。执行以下步骤启用 TIA。
部署应用程序
部署被测应用程序。支持以任何压缩文件格式(包括 zip、war、jar 和 ear)打包的应用程序,也支持包含独立类文件或嵌入压缩文件中的类文件的分级目录结构。
关联覆盖率代理与 AUT
SOAtest 包含一个 Java 代理,可生成 SOAtest 所需的覆盖率信息,以确定哪些测试会受到变更影响。
该代理位于 <INSTALL>/coverage
目录中。它从同一目录下的 agent.properties 文件中获取配置设置。您需要将包含 agent.jar 和 agent.properties 文件的 coverage 目录复制到运行 AUT 的机器上。
配置覆率盖代理
详情请参阅应用程序覆盖率。
创建基线覆盖报告
配置适当的应用覆盖率设置,运行完整的测试套件来收集数据并生成基线覆盖率报告:
soatestcli.exe -data <Your Workspace> -resource <Your Tests> -settings <Properties File with SOAtest Settings> -config <Your Team's Test Configuration>
如果已经运行了自动测试,可以在 -settings
参数中指向其属性文件。
有关使用 SOAtest 构建测试执行命令的详细信息,请参阅在命令行界面使用 - soatestcli 进行测试。您也可以从 SOAtest GUI 手动运行测试。
执行受变更影响的测试
当被测应用程序的新版本可用时,可以运行测试影响分析。若只执行 TIA 报告的测试,可使用 -impactedTests
参数,将运行的测试限制为仅受 AUT 中变更影响的测试:
soatestcli.exe -data <Your Workspace> -impactedTests <Path to Baseline Coverage Report> -settings <Properties File with SOAtest Settings> -config <Your Team's Test Configuration>
可选过滤器:
-include
:指定需始终运行的测试,无论其是否属于-impactedTests
的一部分。-exclude
:指定不运行的测试,无论其是否属于-impactedTests
的一部分。
使用 -impactedTests
参数时,请务必注意以下设置。有关设置的更多信息,请参阅应用程序覆盖率设置。在上面的示例中,这些设置将在 -settings
参数指定的 SOAtest 设置文件中配置。
application.coverage.binaries
:设置为被测应用程序修改版的二进制文件。application.coverage.binaries.include
:可选项,但建议使用。如果既未配置此项,也未配置application.coverage.binaries.exclude
,二进制文件的分析时间会更长,对应用程序的分析也会超出需要。application.coverage.binaries.exclude
:可选项,但建议使用。如果既未配置此项,也未配置application.coverage.binaries.include
,二进制文件的分析时间会更长,对应用程序的分析也会超出需要。
有关使用 SOAtest 构建测试执行命令的详细信息,请参阅在命令行界面使用 - soatestcli 进行测试。