我正在使用Serverless框架在AWS上运行Lambda函数。
在我的serverless.yml中,有一些从SSM获取的环境变量。
当我为代码编写集成测试时,我需要代码具有这些环境变量,但我找不到一个好方法来实现这一点。
我不想为测试重复所有变量定义,它们已经在serverless.yml中定义。此外,一些是机密信息,我不能将它们提交到源控件,所以我也必须在ci环境中重复它们。
尝试使用serverless-jest-plugin,但它不能正常工作并且没有得到很好的维护。
我想出的解决方案:
1. 让测试执行`sls invoke`-这将起作用,但意味着代码无法调试,我将不知道测试覆盖率,并且它会很慢。
2. 自己解析serverless.yml并导出env变量-可能性是存在的,但为了测试重写拉取SSM变量的逻辑似乎有些不对。
还有其他的想法吗?
在我的serverless.yml中,有一些从SSM获取的环境变量。
当我为代码编写集成测试时,我需要代码具有这些环境变量,但我找不到一个好方法来实现这一点。
我不想为测试重复所有变量定义,它们已经在serverless.yml中定义。此外,一些是机密信息,我不能将它们提交到源控件,所以我也必须在ci环境中重复它们。
尝试使用serverless-jest-plugin,但它不能正常工作并且没有得到很好的维护。
我想出的解决方案:
1. 让测试执行`sls invoke`-这将起作用,但意味着代码无法调试,我将不知道测试覆盖率,并且它会很慢。
2. 自己解析serverless.yml并导出env变量-可能性是存在的,但为了测试重写拉取SSM变量的逻辑似乎有些不对。
还有其他的想法吗?