I've contributed a few patches to JDT Core and UI in the past couple of years, so I'm guessing I fit in the "new contributors" category and may be able to provide some insight.
My first contribution was fixing bug 424214 and I faced two problems related to this discussion:
* I struggled to write new unit tests. At the time, I had never used JUnit 3 (which is understandable given that JUnit 4 was released early 2006). I was probably trying to write a test method with a different naming convention and it wasn't being picked up by the framework - no longer sure at this point. And as JUnit 3 was not a thing I had used, I didn't even realise it was JUnit 3 (in my mind it was some bespoke Eclipse test utility running) and consequently I couldn't easily look up any documentation to solve my problems. In the end, I ended up putting the tests in an existing file and copy-pasted as much possible, not really understanding how things fitted together. For anyone who has started writing Java in the past decade or so, these mass migrations to JUnit 4, even though they touch a lot of files and introduce commit noise, are useful.