Я хочу иметь разные конфигурации контейнеров в своем arquillian.xml и выбирать их в своем тесте. Но я не могу загрузить ни один контейнер, кроме контейнера по умолчанию.
Тестовый пример:
@Deployment(name="depl1")
@TargetsContainer("weld")
public static JavaArchive createTestArchive() throws UnsupportedEncodingException {
return ShrinkWrap
.create(JavaArchive.class, "test.jar")
.addClasses(SomeOtherCdiService.class)
.addAsManifestResource(new ByteArrayAsset(beansXmlContent.getBytes("utf-8")), ArchivePaths.create("beans.xml"));
}
@Test
@OperateOnDeployment("depl1")
public void shouldBeAbleToInjectInject() {
assertNotNull(someOtherCdiService);
}
Но тесты не запускаются, потому что Arquilian не находит контейнер
org.jboss.arquillian.container.test.impl.client.deployment.ValidationException:
DeploymentScenario содержит целевые объекты, не соответствующие ни одному определенному контейнеру
в реестре. сварка. Возможные причины: В пути к классам не найден развертываемый контейнер
или вы определили
@org.jboss.arquillian.container.test.api.Deployment с помощью
@org.jboss.arquillian. ЗначениеContainer.test.api.TargetsContainer, которое
не соответствует ни одному из найденных/настроенных контейнеров (см. arquillian.xml
Container@qualifier)
Я заглянул в исходный код и обнаружил, что Aquilian находит только контейнер _DEFAULT_.
Тесты работают, когда Я удаляю @TargetsContainer("weld") из метода развертывания. Поэтому я думаю, что общий тест в порядке.
Тесты также будут работать, если я изменю конфигурацию контейнера на default="true" (), то тесты работают, поэтому я думаю, что файл конфигурации загружен.
Есть ли у кого-нибудь идеи, что происходит не так? >
Подробности
Полная трассировка стека:
org.jboss.arquillian.container.test.impl.client.deployment.ValidationException:
DeploymentScenario contains targets not matching any defined Container in the registry. weld.
Possible causes are: No Deployable Container found on Classpath or your have defined a
@org.jboss.arquillian.container.test.api.Deployment with a
@org.jboss.arquillian.container.test.api.TargetsContainer value that does not match any found/configured Containers
(see arquillian.xml container@qualifier) < b r / > a t o r g . j b o s s . a r q u i l l i a n . c o n t a i n e r . t e s t . i m p l . c l i e n t . d e p l o y m e n t . D e p l o y m e n t G e n e r a t o r . v a l i d a t e ( D e p l o y m e n t G e n e r a t o r . j a v a : 1 0 2 ) < b r / > a t o r g . j b o s s . a r q u i l l i a n . c o n t a i n e r . t e s t . i m p l . c l i e n t . d e p l o y m e n t . D e p l o y m e n t G e n e r a t o r . g e n e r a t e D e p l o y m e n t ( D e p l o y m e n t G e n e r a t o r . j a v a : 8 4 ) < b r / > a t s u n . r e f l e c t . N a t i v e M e t h o d A c c e s s o r I m p l . i n v o k e 0 ( N a t i v e M e t h o d ) < b r / > a t s u n . r e f l e c t . N a t i v e M e t h o d A c c e s s o r I m p l . i n v o k e ( N a t i v e M e t h o d A c c e s s o r I m p l . j a v a : 3 9 ) < b r / > a t s u n . r e f l e c t . D e l e g a t i n g M e t h o d A c c e s s o r I m p l . i n v o k e ( D e l e g a t i n g M e t h o d A c c e s s o r I m p l . j a v a : 2 5 ) < b r / > a t j a v a . l a n g . r e f l e c t . M e t h o d . i n v o k e ( M e t h o d . j a v a : 5 9 7 ) < b r / > a t o r g . j b o s s . a r q u i l l i a n . c o r e . i m p l . O b s e r v e r I m p l . i n v o k e ( O b s e r v e r I m p l . j a v a : 9 0 ) < b r / > a t o r g . j b o s s . a r q u i l l i a n . c o r e . i m p l . E v e n t C o n t e x t I m p l . i n v o k e O b s e r v e r s ( E v e n t C o n t e x t I m p l . j a v a : 9 9 ) < b r / > a t o r g . j b o s s . a r q u i l l i a n . c o r e . i m p l . E v e n t C o n t e x t I m p l . p r o c e e d ( E v e n t C o n t e x t I m p l . j a v a : 8 1 ) < b r / > a t o r g . j b o s s . a r q u i l l i a n . c o r e . i m p l . M a n a g e r I m p l . f i r e ( M a n a g e r I m p l . j a v a : 1 3 4 ) < b r / > a t o r g . j b o s s . a r q u i l l i a n . c o r e . i m p l . M a n a g e r I m p l .fire(ManagerImpl.java:114)
at org.jboss.arquillian.core.impl.EventImpl.fire(EventImpl.java:67)
at org.jboss.arquillian.container.test.impl.client.ContainerEventController.execute(ContainerEventController.java:100)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:90)
at org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers(EventContextImpl.java:99)
at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:81)
at org.jboss.arquillian.test.impl.TestContextHandler.createClassContext(TestContextHandler.java:75)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:90)
at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
at org.jboss.arquillian.test.impl.TestContextHandler.createSuiteContext(TestContextHandler.java:60)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:90)
at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:134)
at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:114)
at org.jboss.arquillian.test.impl.EventTestRunnerAdaptor.beforeClass(EventTestRunnerAdaptor.java:80)
at org.jboss.arquillian.junit.Arquillian$2.evaluate(Arquillian.java:179)
at org.jboss.arquillian.junit.Arquillian.multiExecute(Arquillian.java:311)
at org.jboss.arquillian.junit.Arquillian.access$100(Arquillian.java:46)
at org.jboss.arquillian.junit.Arquillian$3.evaluate(Arquillian.java:196)
at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
at org.jboss.arquillian.junit.Arquillian.run(Arquillian.java:144)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
Зависимости POM.XML
javax.enterprise
cdi-api
1.0-SP4
provided
javax.annotation
jsr250-api
provided
1.0
javax.validation
validation-api
provided
1.0.0.GA
org.hibernate
hibernate-validator
4.0.0.GA
provided
slf4j-api
org.slf4j
javax.faces
jsf-api
2.0
provided
javax.ejb
ejb-api
3.0
provided
junit
junit
4.10
test
org.hamcrest
hamcrest-core
${hamcrest.version}
test
org.hamcrest
hamcrest-library
${hamcrest.version}
test
org.jboss.arquillian.junit
arquillian-junit-container
1.0.0.CR6
test
org.jboss.arquillian.container
arquillian-weld-se-embedded-1.1
1.0.0.CR3
test
org.jboss.weld.se
weld-se-core
1.1.5.Final
test
org.jboss.weld
weld-core
1.1.5.Final
slf4j-api
org.slf4j
test
org.javassist
javassist
3.14.0-GA
test
org.slf4j
slf4j-jdk14
1.6.1
test
Подробнее здесь: https://stackoverflow.com/questions/974 ... illian-xml
Как выбрать контейнер по квалификатору из arquillian.xml? ⇐ JAVA
Программисты JAVA общаются здесь
-
Anonymous
1722416932
Anonymous
Я хочу иметь разные конфигурации контейнеров в своем arquillian.xml и выбирать их в своем тесте. Но я не могу загрузить ни один контейнер, кроме контейнера по умолчанию.
Тестовый пример:
@Deployment(name="depl1")
@TargetsContainer("weld")
public static JavaArchive createTestArchive() throws UnsupportedEncodingException {
return ShrinkWrap
.create(JavaArchive.class, "test.jar")
.addClasses(SomeOtherCdiService.class)
.addAsManifestResource(new ByteArrayAsset(beansXmlContent.getBytes("utf-8")), ArchivePaths.create("beans.xml"));
}
@Test
@OperateOnDeployment("depl1")
public void shouldBeAbleToInjectInject() {
assertNotNull(someOtherCdiService);
}
Но тесты не запускаются, потому что Arquilian не находит контейнер
org.jboss.arquillian.container.test.impl.client.deployment.ValidationException:
DeploymentScenario содержит целевые объекты, не соответствующие ни одному определенному контейнеру
в реестре. сварка. Возможные причины: В пути к классам не найден развертываемый контейнер
или вы определили
@org.jboss.arquillian.container.test.api.Deployment с помощью
@org.jboss.arquillian. ЗначениеContainer.test.api.TargetsContainer, которое
не соответствует ни одному из найденных/настроенных контейнеров (см. arquillian.xml
Container@qualifier)
Я заглянул в исходный код и обнаружил, что Aquilian находит только контейнер _DEFAULT_.
Тесты работают, когда Я удаляю @TargetsContainer("weld") из метода развертывания. Поэтому я думаю, что общий тест в порядке.
Тесты также будут работать, если я изменю конфигурацию контейнера на default="true" (), то тесты работают, поэтому я думаю, что файл конфигурации загружен.
[b]Есть ли у кого-нибудь идеи, что происходит не так?[/b] >
Подробности
Полная трассировка стека:
org.jboss.arquillian.container.test.impl.client.deployment.ValidationException:
DeploymentScenario contains targets not matching any defined Container in the registry. weld.
Possible causes are: No Deployable Container found on Classpath or your have defined a
@org.jboss.arquillian.container.test.api.Deployment with a
@org.jboss.arquillian.container.test.api.TargetsContainer value that does not match any found/configured Containers
(see arquillian.xml container@qualifier) < b r / > a t o r g . j b o s s . a r q u i l l i a n . c o n t a i n e r . t e s t . i m p l . c l i e n t . d e p l o y m e n t . D e p l o y m e n t G e n e r a t o r . v a l i d a t e ( D e p l o y m e n t G e n e r a t o r . j a v a : 1 0 2 ) < b r / > a t o r g . j b o s s . a r q u i l l i a n . c o n t a i n e r . t e s t . i m p l . c l i e n t . d e p l o y m e n t . D e p l o y m e n t G e n e r a t o r . g e n e r a t e D e p l o y m e n t ( D e p l o y m e n t G e n e r a t o r . j a v a : 8 4 ) < b r / > a t s u n . r e f l e c t . N a t i v e M e t h o d A c c e s s o r I m p l . i n v o k e 0 ( N a t i v e M e t h o d ) < b r / > a t s u n . r e f l e c t . N a t i v e M e t h o d A c c e s s o r I m p l . i n v o k e ( N a t i v e M e t h o d A c c e s s o r I m p l . j a v a : 3 9 ) < b r / > a t s u n . r e f l e c t . D e l e g a t i n g M e t h o d A c c e s s o r I m p l . i n v o k e ( D e l e g a t i n g M e t h o d A c c e s s o r I m p l . j a v a : 2 5 ) < b r / > a t j a v a . l a n g . r e f l e c t . M e t h o d . i n v o k e ( M e t h o d . j a v a : 5 9 7 ) < b r / > a t o r g . j b o s s . a r q u i l l i a n . c o r e . i m p l . O b s e r v e r I m p l . i n v o k e ( O b s e r v e r I m p l . j a v a : 9 0 ) < b r / > a t o r g . j b o s s . a r q u i l l i a n . c o r e . i m p l . E v e n t C o n t e x t I m p l . i n v o k e O b s e r v e r s ( E v e n t C o n t e x t I m p l . j a v a : 9 9 ) < b r / > a t o r g . j b o s s . a r q u i l l i a n . c o r e . i m p l . E v e n t C o n t e x t I m p l . p r o c e e d ( E v e n t C o n t e x t I m p l . j a v a : 8 1 ) < b r / > a t o r g . j b o s s . a r q u i l l i a n . c o r e . i m p l . M a n a g e r I m p l . f i r e ( M a n a g e r I m p l . j a v a : 1 3 4 ) < b r / > a t o r g . j b o s s . a r q u i l l i a n . c o r e . i m p l . M a n a g e r I m p l .fire(ManagerImpl.java:114)
at org.jboss.arquillian.core.impl.EventImpl.fire(EventImpl.java:67)
at org.jboss.arquillian.container.test.impl.client.ContainerEventController.execute(ContainerEventController.java:100)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:90)
at org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers(EventContextImpl.java:99)
at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:81)
at org.jboss.arquillian.test.impl.TestContextHandler.createClassContext(TestContextHandler.java:75)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:90)
at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
at org.jboss.arquillian.test.impl.TestContextHandler.createSuiteContext(TestContextHandler.java:60)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:90)
at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:134)
at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:114)
at org.jboss.arquillian.test.impl.EventTestRunnerAdaptor.beforeClass(EventTestRunnerAdaptor.java:80)
at org.jboss.arquillian.junit.Arquillian$2.evaluate(Arquillian.java:179)
at org.jboss.arquillian.junit.Arquillian.multiExecute(Arquillian.java:311)
at org.jboss.arquillian.junit.Arquillian.access$100(Arquillian.java:46)
at org.jboss.arquillian.junit.Arquillian$3.evaluate(Arquillian.java:196)
at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
at org.jboss.arquillian.junit.Arquillian.run(Arquillian.java:144)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
Зависимости POM.XML
javax.enterprise
cdi-api
1.0-SP4
provided
javax.annotation
jsr250-api
provided
1.0
javax.validation
validation-api
provided
1.0.0.GA
org.hibernate
hibernate-validator
4.0.0.GA
provided
slf4j-api
org.slf4j
javax.faces
jsf-api
2.0
provided
javax.ejb
ejb-api
3.0
provided
junit
junit
4.10
test
org.hamcrest
hamcrest-core
${hamcrest.version}
test
org.hamcrest
hamcrest-library
${hamcrest.version}
test
org.jboss.arquillian.junit
arquillian-junit-container
1.0.0.CR6
test
org.jboss.arquillian.container
arquillian-weld-se-embedded-1.1
1.0.0.CR3
test
org.jboss.weld.se
weld-se-core
1.1.5.Final
test
org.jboss.weld
weld-core
1.1.5.Final
slf4j-api
org.slf4j
test
org.javassist
javassist
3.14.0-GA
test
org.slf4j
slf4j-jdk14
1.6.1
test
Подробнее здесь: [url]https://stackoverflow.com/questions/9740938/how-to-select-a-container-by-qualifyer-from-arquillian-xml[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия