我正在尝试对使用环境变量创建一些全局对象的aws lambda函数进行单元测试。当我尝试将lambda的本地副本导入到单元测试文件中时,会出现“ LOG_LEVEL”的关键错误。
import boto3
import logging
import os
log_level = os.environ['LOG_LEVEL']
logger = logging.getLogger()
logger.setLevel(eval(log_level))
def handler(event, context):
...some code...
并在我的测试文件中:
import unittest
from myModule import *
from moto import mock_dynamodb2, mock_s3
from botocore.exceptions import ClientError
在导入测试文件之前,我是否还能模拟出os.environ值?
答案 0 :(得分:0)
您可以在测试函数中设置环境变量
def test_log_level():
os.environ['LOG_LEVEL'] = 'DEBUG'
...