My team is bringing on two new people - an intern and a full time. The intern has one semester to go, and the full time is fresh out of uni. After a two week training period, the plan management has for them is to have them write tests to learn the code base. (Which, if you follow my [other questions](https://sqa.stackexchange.com/questions/149/1-5-million-lines-of-code-0-tests-where-should-we-start) you know we need tests desperately.)

But then it got me thinking... how can you write a test if you don't know what the code is supposed to actually do? I fear this would cause us to have fragile and non-thorough tests.

Regardless of how common it is, is it a good idea to have new developers write unit tests for a while to learn the code base?