Proper way to run many small tests?

I am trying to set up a gitlab CI pipeline for an established project. We have many short tests to run and the overhead of spinning up a docker container and pulling the repository for each test takes about 10 times longer than the test itself. I am looking for a way to run many small tests like this and still have them each be visible as separate jobs in my pipeline. I have looked in to running multiple commands in one job but can’t find any way to report the result of each command as its own output. I have also looked in to running multiple jobs in the same docker container to avoid the startup overhead, but as far as I can see this is not supported by gitlab CI.

I am a relative novice with gitlab CI, so I may be overlooking something obvious. Any help or advice would be greatly appreciated.

Thank you,