Стратегия модульного тестирования AWS-SAM-LOCAL
Я искал стратегии юнит-тестирования aws-sam-local и почти ничего не нашел. Просто ищете предложения?
1 ответ
Чтобы запустить test_handler.py в каталоге tests, вы можете сделать следующее. Вероятно, вам не нужны все шаги. Сделайте это в каталоге, в котором вы будете выполнять команду sam build.
$ python3 -m venv venv
$ source venv/bin/activate
(venv) $ pip3 install pytest
(venv) $ pip3 install pytest-mock
(venv) $ python3 -m pytest tests/ -v
Обычно я просто рекомендую модульное тестирование вашего кода, как всегда в любом проекте, независимо от языка. Пример: JUnit для Java,
Уникальный sam для тестирования иногда я поддерживаю несколько полезных нагрузок test-case-1.json, test-case-2.json
и ты можешь бежать
sam local invoke -e test-case-1.json
и проверить правильность полученных результатов вручную или программно для более функционального тестирования вашей функции.
Или, если это API, я могу запустить контейнер во время сборки и запустить несколько интеграционных тестов. Я также рекомендую запускать интеграционные тесты после фактического развертывания в своей учетной записи в промежуточном окружении / псевдониме, поскольку это будет наиболее реалистичным.