使用aws-cdk测试lambda(Python)吗?

时间:2019-07-25 15:28:12

标签: python aws-lambda aws-cdk

我想为用Python编写的lambda设置单元测试。我正在使用aws-cdk开发和部署我的lambda。如何正确设置这些单元测试?我要使用哪些库?如何将其放入数据包结构中?也许可以澄清一个例子。

我正在研究库'unittest'。我设置了一个名为“ test”的文件夹,并在其中放置了一个名为test_first.py的测试文件。然后,我可以使用以下命令执行此文件夹中的所有测试文件:python -m unittest discover ./test

test_first.py

import unittest

class FirstTest(unittest.TestCase):
    def test_default(self):
        self.assertEqual(10, (5+5))

if __name__ == '__main__':
    unittest.main()

这是正确的方法吗? 我现在遇到的问题是我不知道如何导入另一个python文件并在此文件中测试其方法。这将是我编写并测试其方法的lambda。我该怎么做呢?

1 个答案:

答案 0 :(得分:0)

Lambda python文件与其他方法可以作为单元测试进行测试的其他python文件一样。 下面是一个简单的示例

import unittest

from my_sum import sum


class TestSum(unittest.TestCase):
    def test_list_int(self):
        """
        Test that it can sum a list of integers
        """
        data = [1, 2, 3]
        result = sum(data)
        self.assertEqual(result, 6)

if __name__ == '__main__':
    unittest.main()

您可以像从 my_sum 中导入 sum 一样导入lambda方法,然后在其上写一些断言。 This文档同样适用。