本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
通过快照测试评测接口变化
支持在蓝图的多个配置中生成快照测试。
蓝图支持对您作为蓝图作者提供的配置进行快照测试
启用快照测试
-
在
.projenrc.ts
文件中, ProjenBlueprint 使用要快照的文件将输入对象更新为。例如:{ .... blueprintSnapshotConfiguration: { snapshotGlobs: ['**', '!environments/**', '!aws-account-to-environment/**'], }, }
-
重新同步蓝图以在蓝图项目中创建 TypeScript 文件。不要编辑源文件,因为它们是由 Projen 维护和重新生成的。使用以下命令:
yarn projen
-
导航到
src/snapshot-configurations
目录,查看带有空对象的default-config.json
文件。用您自己的一个或多个测试配置更新或替换该文件。然后将每个测试配置与项目的defaults.json
文件合并、合成,并在测试时与快照进行比较。使用以下命令进行测试:yarn test
首次使用测试命令时,将显示以下消息:
Snapshot Summary › NN snapshots written from 1 test suite
。随后的测试运行验证合成输出与快照相比是否没有变化,并显示以下消息:Snapshots: NN passed, NN total
。如果您有意更改蓝图以产生不同的输出,请运行以下命令更新参考快照:
yarn test:update
快照希望每次运行的合成输出恒定不变。如果您的蓝图生成的文件各不相同,您必须将这些文件排除在快照测试之外。更新 ProjenBluerpint
输入对象的 blueprintSnapshotConfiguration
对象,添加 snapshotGlobs
属性。snapshotGlobs
属性是一个 globs
注意
有一个默认的 globs 列表。如果您指定了自己的列表,可能需要明确恢复默认条目。