Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java tools & IDE's > Unitils с Maven


Автор: ShurikA 8.8.2010, 08:03
Я недавно начал пользоваться Unitils для тестов v Maven проекте.
Дело в том что до того как я сдвинулся на Maven и пользовался Unitils все мои конфигурационные фаилы для Unitils сидели прямо в корне test package - и всё работало как часы.
Как толко перебрался на Maven, он перестал находить все онфигурационные фаилы, хотя они наxодятся там же (src/test/java/).
Где должны сидеть эти фаилы в Maven проекте?

Спасибо.

Автор: Старовъръ 8.8.2010, 10:57
Не находит их maven или твоя IDE все-таки? Если это ресурсы, их кладут в кталог resources, а не java.
На всякий случай: http://maven.apache.org/guides/introduction/introduction-to-the-standard-directory-layout.html

Автор: ShurikA 8.8.2010, 11:14
Цитата(Старовъръ @ 8.8.2010,  09:57)
Не находит их maven или твоя IDE все-таки? Если это ресурсы, их кладут в кталог resources, а не java.
На всякий случай: http://maven.apache.org/guides/introduction/introduction-to-the-standard-directory-layout.html

Спасибо, разобрался, теперь всё в resources; в том чесле и скрипты для dbMaintainer.
Но теперь они не находятся...

определенно у меня вот так:
dbMaintainer.script.locations=dbscripts/test_db

и дерикториа dbscripts прямо под resources...
 smile

Добавлено через 5 минут и 45 секунд
Я только не могу понять что является в Maven classpath ?

Автор: Старовъръ 8.8.2010, 11:44
Цитата
и дерикториа dbscripts прямо под resources...
Нене, какая еще директория smile Все в java/resources - это уже пакеты и это все в classpath. И путь тебе нужно указывать не как к директории, а как ресурсу в classpath. 

Автор: ShurikA 8.8.2010, 11:46
и та же самая байда происходит с загрузкой тест данных.

У меня пределенно вор так:
@DataSet(loadStrategy = CleanInsertLoadStrategy.class, value="SystemUserDaoTest.xml")
И при этом SystemUserDaoTest.xml находится в той ше дериктории где и тестовый класс.
и ...
Код

org.unitils.core.UnitilsException: DataSet file with name com/iibs/dao/auth/SystemUserDaoTest.xml cannot be found

ощущение что поиск идёт не с корня src а с корня всего проекта...

Автор: Старовъръ 8.8.2010, 13:20
Код
@DataSet(loadStrategy = CleanInsertLoadStrategy.class, value="SystemUserDaoTest.xml")
Я не знаю что это за аннотация, но она, видимо, ищет не в класспасе, а от корневого каталога. В спринге например это должно было бы выглядеть так:
classpath:com/iibs/dao/auth/SystemUserDaoTest.xml
При этом видеть его могут только тесты, т.к. он лежит в каталоге test.

Автор: ShurikA 9.8.2010, 01:15
Цитата(Старовъръ @  8.8.2010,  12:20 Найти цитируемый пост)
classpath:com/iibs/dao/auth/SystemUserDaoTest.xml

Я это пробовал, но в резултате он пытается найти вот это:
Код

com/iibs/dao/auth/classpath:com/iibs/dao/auth/SystemUserDaoTest.xml

 smile 

Я нашёл только один путь:
Положить этот фаил в resources/com/iibs/dao/auth/SystemUserDaoTest.xml

Тогда всё ОК.  Странно, но работает.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)