this post was submitted on 09 Aug 2024
34 points (100.0% liked)
Programming
17366 readers
172 users here now
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Rules
- Follow the programming.dev instance rules
- Keep content related to programming in some way
- If you're posting long videos try to add in some form of tldr for those who don't want to watch videos
Wormhole
Follow the wormhole through a path of communities !webdev@programming.dev
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
What is the specific use case of these, relating to unit testing?
Why not just have the container execute unit tests, once that process ends and the container closes itself? This wouldn’t need anything additional.
I don't get it, how would a database container run your unit tests? And unless you know some secret option to stop the database after, say, it is idle for a few seconds, it will continue running.
The purpose is to test database dependent code by spinning up a real database and run your code against that.
Ah! That’s what I didn’t understand. So its not a container for executing unit tests. Its a container for dependencies to support unit tests. That is not clear from the readme unless I missed something
edit - the title could be “Self terminating containers for real world dependencies to support your unit tests”
This feels more like an integration test than a unit test to me. Maybe that's not an important distinction to make, but it feels like it would also help communicate intent.
I'm reading this scratching my head going "If your unit tests need a database they ain't a unit test".
Thanks man, my brain was short-circuited on Testcontainers so I couldn't write better. Also I am stealing the title.
So it's not for unit tests, that's where the confusion stems