Because it is not necessary and you cannot select a wrong version that way.
I didn’t check, but I guess the Jupiter dependency also brings in the platform BOM which then brings in the version for the launcher dependency.
I assume if you do not provide that dependency yourself, the runner (gradle or intellij) will their own runner version. I just ran into an issue after upgrading to spring boot 3.5.0 that those versions were misaligned. Adding the test runtime only fixed the issue for me
OutputDirectoryProvider not available; probably due to unaligned versions of the junit-platform-engine and junit-platform-launcher jars on the classpath/module path.