Am 23.05.2013 um 02:35 schrieb Igor Stasenko <siguctua@gmail.com>:

ProjectName-Core
ProjectName-Extras
ProjectName-Tests

That approach has a limited scope. Because we match by prefix you have to do -Core and not just ProjectName. In a decent amount of projects -Core and -Extras will grow and you will have tests for -Core and -Extras and you don't want to combine them into a single -Tests package.
But what do you do?

ProjectName-Core-Core
ProjectName-Core-Tests

?? Surely not. From this perspective one can look the way seaside does it. It is 

ProjectName-Core
ProjectName-Extras
ProjectName-Tests-Core
ProjectName-Tests-Extras

So there are multiple possibilities how to achieve it. I always start my projects by keeping tests inside the same package as the rest of the code. Well, I have the habit to mostly create a -Core package at the beginning. Later of the module grows I put -Tests in an extra package. And in one big project I did the seaside approach by putting the -Tests after the ProjectName. This way you don't have too much problems until you introduce platform dependent packages. 

Norbert