2020-01-28
2751
#node
Darko Milosevic
13185
Jan 28, 2020 ⋅ 9 min read

Testing Node serverless applications — AWS Lambda functions

Darko Milosevic I'm a JavaScript developer who loves exploring, coding, and blogging — but only because it's fun.

Recent posts:

TypeScript logo over a pink and white background.

Drizzle vs. Prisma: Which ORM is best for your project?

Compare Prisma and Drizzle ORMs to learn their differences, strengths, and weaknesses for data access and migrations.

Temitope Oyedele
Nov 21, 2024 ⋅ 10 min read
Practical Implementation Of The Rule Of Least Power For Developers

Practical implementation of the Rule of Least Power for developers

It’s easy for devs to default to JavaScript to fix every problem. Let’s use the RoLP to find simpler alternatives with HTML and CSS.

Timonwa Akintokun
Nov 21, 2024 ⋅ 8 min read
Rust logo over black marble background.

Handling memory leaks in Rust

Learn how to manage memory leaks in Rust, avoid unsafe behavior, and use tools like weak references to ensure efficient programs.

Ukeje Goodness
Nov 20, 2024 ⋅ 4 min read
Robot pretending to be a person.

Using curl-impersonate in Node.js to avoid blocks

Bypass anti-bot measures in Node.js with curl-impersonate. Learn how it mimics browsers to overcome bot detection for web scraping.

Antonello Zanini
Nov 20, 2024 ⋅ 13 min read
View all posts

2 Replies to "Testing Node serverless applications — AWS Lambda functions"

  1. I’m really happy I found your post, as testing in serverless is not a much talked about topic! I’m not sure if you’re following it on purpose, but the pattern you’re proposing is really close to Clean Architecture. One thing that I have done recently to extremely simply writing tests is to abstract out the “interfaces” such as s3, sqs, etc from the business logic. I wrote a wrapper for each interface that presents an api to the business logic, and use an application context factory to inject the interface dependencies. That way, you can test the wrapper, and your business logic – but you can completely fake your interfaces with a test application context. No need to instantiate AWS() in your tests that way.

  2. Thanks Chris!
    Yes, this pattern is quite similar to the Clean Architecture, with the accent on decoupling components (I/O etc) from the core logic.

Leave a Reply