Включайте Модульные тесты в тот же пакет как исходный код в Java

Я возвращаюсь в Java после длинного ограничения в мире Ruby, и у меня есть вопрос о тестах JUnit и источнике, который я тестирую.

Если у меня есть пакет графического кода для моей компании, позволяет, называют его com.example.graphics, если я включаю свои тесты в тот пакет также или если они включены в отдельный пакет, как com.example.graphics.test?

9
задан Pascal Thivent 24 May 2010 в 17:06
поделиться

4 ответа

В том же пакете java все нормально. Это действительно необходимо, если вам нужен доступ к частным классам, методам или полям пакета. Однако источник должен быть логически разделен:

src/main/com/example/graphics
src/test/com/example/graphics
35
ответ дан 4 December 2019 в 06:29
поделиться

Я лично храню все свои тесты в одном пакете, но в дереве тестов Maven (которое я всегда использую для проектов Java). Подумайте об использовании Maven для ваших сборок - это сэкономит вам много работы. Он обеспечивает структуру, аналогичную той, что упоминается в bkail, но дает вам гораздо больше, чем стандартизованный макет папки проекта - жизненный цикл проекта (чистый, компиляция, пакет, тест), плагины и т. Д.

1
ответ дан 4 December 2019 в 06:29
поделиться

Если вам не нужен доступ к частным классам, это на самом деле вопрос вкуса .

Иногда я даже стараюсь создать дополнительный тестовый проект со ссылкой на продукт-проект. Таким образом, продукт и тест четко разделены.

1
ответ дан 4 December 2019 в 06:29
поделиться

Помещение тестов в отдельный пакет помогает избежать проблемы случайного наличия какого-либо метода или класса в объеме пакета, который вы предполагаемые клиенты для использования.

0
ответ дан 4 December 2019 в 06:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: