У меня есть приложение Lambda, в котором я использую слой для хранения своих зависимостей, но это затрудняет работу при локальном запуске модульных тестов.
То, что я ищу, это способ сохранить мои текущая архитектура, но запускаются юнит-тесты.
Пример структуры
dependencies
|---- nodejs
|----|---- node_modules
|----|---- package-lock.json
|----|---- package.json
src
|---- handler
|----|---- index.js
template.yml
buildspec.yml
index. js
const fetch = require('node-fetch') // Error: Cannot find module 'node-fetch'
exports.handler = async () => {
const data = await fetch('https://someapi.com')
return {
statusCode: 200,
body: JSON.stringify(await data.json())
}
}
Как вы можете видеть из структуры папок, мои зависимости больше не находятся там, где вы обычно находите их, что вызывает проблему при попытке запустить модульные тесты или даже при простом вызове моих файлов из терминала, node index.js
.
Что я могу сделать, чтобы сохранить эту структуру, чтобы слои работали с AWS, но также запускали модульные тесты?