При написании модульных тестов у меня обычно есть один тестовый класс для производственного класса, поэтому моя иерархия будет выглядеть примерно так:
src/main
-package1
-classA
-classB
-package2
-classC
src/test
-package1
-classATests
-classBTests
-package2
-classCTests
Однако при проведении интеграционных тестов организация становится менее жесткой. Например, у меня может быть тестовый класс, который тестирует classA и classB вместе. Где бы вы выразились? Как насчет тестового класса, который вместе тестирует классы A, classB и classC?
Кроме того, интеграционные тесты обычно требуют внешних свойств или файлов конфигурации. Где вы их размещаете и используете ли вы для них какое-либо соглашение об именах?