问题标签 [jboss-arquillian]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1977 浏览

java - deploymentURL 未注入到 Arquillian Drone 的集成测试中

我正在尝试在我们的项目中引入使用 Arquillian Drone 的集成测试。我做了一些小的演示应用程序,阅读了一些东西,最后尝试为相对简单的网页编写一个简单的集成测试。

我想我已经解决了所有必需的依赖项,并且能够在 Intellij Idea 中运行我的测试类。但是当我运行它时,我得到一个异常说:

java.lang.RuntimeException:无法查找字段 java.net.URL com.example.BEViewUIWithDrone.deploymentURL 的值(...)

造成的:

java.lang.RuntimeException:类型类 java.net.URL 的提供程序返回了一个空值:org.jboss.arquillian.test.impl 中的 org.jboss.arquillian.container.test.impl.enricher.resource.URLResourceProvider@6e73a35c。 org.jboss.arquillian.test.impl.enricher.resource.ArquillianResourceTestEnricher.enrich(ArquillianResourceTestEnricher.java:57) 上的enricher.resource.ArquillianResourceTestEnricher.lookup(ArquillianResourceTestEnricher.java:115)”(完整堆栈跟踪较低)

我的测试课:

Pom 片段:链接到带有列表的 paste.org

完整的堆栈跟踪:

0 投票
1 回答
1443 浏览

java - Arquillian glassfish-managed test Absent Code 属性错误

我正在尝试阅读 Arquillian入门指南。只要我使用 arquillian-weld-ee-embedded 容器,一切正常。但是,当我尝试切换到 glassfish-managed 时,我收到了这个错误:

我使用了参考指南中显示的配置。

这是我的 pom.xml:

还有我的 src/test/resources/arquillian.xml:

Greeter、PhraseBuilder 和 GreeterTest 类与上述指南中的相同。

编辑:这是 Surefire 的报告:

0 投票
1 回答
4363 浏览

spring - 如何使用 Arquillian 在应用服务器容器中测试 Spring?

我们正在尝试使用 TestNG 框架在嵌入式 tomcat 容器上运行基于 Spring 的代码的集成测试。

我们尝试使用现有的 Arquillian Spring Extension,但没有取得多大成功。也许一些缺少的配置。我们已按照此帖子的说明进行操作

我们的 pom 包含以下依赖项:

我们还在我们的 pom.xml 中添加了一个 Tomcat 嵌入式配置文件。

我们的arquillian.xml样子...

我们还尝试将以下几行添加到我们的arquillian.xml

我们创建了一个空测试并检查嵌入式 Tomcat 是否启动并且测试是否运行。下一步是验证 Arquillian Spring Extension 是否正常工作,为此我们尝试将 Spring bean 注入到我们的测试中。

问题是@SpringConfiguration注释根本不可用。所以我们猜测我们缺少一些配置。关于如何进行的任何线索?

0 投票
1 回答
1980 浏览

jboss-arquillian - 无法使用 Arquillian 注入注入 bean 的依赖项

我正在使用 Arquillian 为我的测试注入依赖项。如果我将 bean 直接注入到我的测试类中,它可以正常工作,但如果 bean 具有它们自己的依赖项,则必须注入这些依赖项,这些依赖项不会被注入。

例如:FacLptConfiguration bean 被正确导入到我的测试类中,但它没有被注入到 CfdFileCreator bean 中。我将 FacLptConfigurtion 注入到测试类中只是为了确认注入工作,但是这个类的用户是 CfdFileCreator。

}

这些注射不起作用:

0 投票
1 回答
1802 浏览

glassfish - Arquillian、glassfish 和 h2 数据库

我目前正在解决使用 Arquillian 创建数据库单元测试环境的许多问题。我的项目已经在基于 Seam 3、JSF 和 MySQL 的 Glassfish 3.1.2 环境中运行。但是,当尝试使用 Arquillian 设置测试环境时,事情变得很糟糕。

我的最终目标是使用 Glassfish 嵌入式服务器和嵌入式内存 h2 数据库进行基于 Arquillian 的单元测试。对于嵌入式容器,我并不挑剔,只是 Arquillian JPA 指南建议最小的 Weld 容器不支持 JPA。这就是我选择 Glassfish 的原因。由于我还没有接近持久性上下文的初始化,所以我没有发布我的 persistence.xml 文件。

到目前为止,这是我最终得到的 POM:

我想对于这篇文章,只有“测试依赖项”很重要(见评论标记),因为实际的主要部署完美无缺。运行以下单元测试:

现在为我提供了以下例外:

对此,我完全一无所知。我什至不知道java oO中存在这些类型的异常......

在此先感谢您的任何建议!任何帮助表示赞赏!

最好的问候帕斯卡

0 投票
4 回答
2696 浏览

java - 如何在 jBoss 7.x 的 Arquillian 测试中设置 p6spy 驱动程序?

除了在

补充p6spy.jarmodule.xml

在下面编辑standalone-full.xml和添加一个条目datasources/drivers

在中添加模块依赖项jboss-deployment-structure.xml

将数据源定义中的原始驱动程序替换为p6spy我仍然收到此错误:

0 投票
1 回答
8888 浏览

ejb-3.1 - 使用 Arquillian 运行多个测试时尝试注入远程 ejb-ref 的异常

我有许多使用“arquillian-glassfish-embedded-3.1”容器(1.0.0.CR3)使用Arquillian(1.0.2.Final)运行的测试类。

如果我单独运行任何测试类,它们会按预期运行,如果我尝试运行多个测试类 (TestSuite),我会遇到将 EJB 注入类的问题。

java.lang.RuntimeException:无法注入成员

原因:java.lang.IllegalStateException:尝试注入远程 ejb-ref name=PackageManagerBean,远程 3.x 接口=com.dcp.pkg.PackageManager 解析为模块测试中的应用内 EJB PackageManagerBean 的异常,ejb-link=PackageManagerBean ,lookup=,mappedName=,jndi-name=PackageManagerBean,refType=Session 进入类 com.dcp.transmission.TransmissionManagerBeanTest: 在 SerialContext[myEnv={java.naming.factory.初始=com.sun.enterprise.naming.impl.SerialInitContextFactory,java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl,java.naming.factory.url.pkgs=com。 sun.enterprise.naming}

原因:com.sun.enterprise.container.common.spi.util.InjectionException:尝试注入远程 ejb-ref name=PackageManagerBean,远程 3.x 接口=com.dcp.pkg.PackageManager 解析为应用内 EJB 的异常模块测试中的 PackageManagerBean,ejb-link=PackageManagerBean,lookup=,mappedName=,jndi-name=PackageManagerBean,refType=Session 进入类 com.dcp.transmission.TransmissionManagerBeanTest:在 SerialContext 中查找 'java:comp/env/PackageManagerBean' 失败[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory,java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl,java。命名.factory.url.pkgs=com.sun.enterprise.naming}

原因:javax.naming.NamingException:在 SerialContext [myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming 中查找“java:comp/env/PackageManagerBean”失败.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.url.pkgs=com.sun.enterprise.naming} [根异常是 javax.naming.NamingException: Exception为 'Remote ejb-ref name=PackageManagerBean,Remote 3.x interface =com.dcp.pkg.PackageManager 解析 Ejb 在模块测试中解析为应用内 EJB PackageManagerBean,ejb-link=PackageManagerBean,lookup=,mappedName=,jndi-名称=PackageManagerBean,refType=Session' 。用于查找的实际(可能是内部)远程 JNDI 名称是 'PackageManagerBean#com.dcp.pkg.PackageManager' [根异常是 javax.naming.NamingException:

引起:javax.naming.NamingException: Exception resolve Ejb for 'Remote ejb-ref name=PackageManagerBean,Remote 3.x interface =com.dcp.pkg.PackageManager 在模块测试中解析为应用内 EJB PackageManagerBean,ejb-link= PackageManagerBean,lookup=,mappedName=,jndi-name=PackageManagerBean,refType=Session' 。用于查找的实际(可能是内部)远程 JNDI 名称是“PackageManagerBean#com.dcp.pkg.PackageManager”[根异常是 javax.naming.NamingException:在 SerialContext 中查找“PackageManagerBean#com.dcp.pkg.PackageManager”失败[ myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming .factory.url.pkgs=com.sun.enterprise.naming} [根例外是 javax.naming。

原因:javax.naming.NamingException:在 SerialContext [myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java 中查找 'PackageManagerBean#com.dcp.pkg.PackageManager' 失败.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.url.pkgs=com.sun.enterprise.naming} [根异常是 javax.naming.NamingException :远程业务接口com.dcp.pkg.PackageManager的ejb ref解析错误[根异常是java.lang.IllegalArgumentException:参数类型不匹配]]

原因:javax.naming.NamingException:远程业务接口com.dcp.pkg.PackageManager的ejb ref解析错误[根异常是java.lang.IllegalArgumentException:参数类型不匹配]

引起:java.lang.IllegalArgumentException:参数类型不匹配

包管理器 Bean 定义如下:

包管理器被注入到几个测试类中,如下例所示:

我似乎没有遇到任何其他 EJB 的问题。

有谁知道问题是什么以及我如何才能让它工作?

0 投票
1 回答
1433 浏览

junit4 - 在junit测试之间清除/重置selenium webdriver

我正在使用带有 selenium webdriver 的 arquillian 石墨烯,但我遇到了一个恼人的问题。

WebDriver 似乎在每次测试之间保留页面状态。我目前正在测试登录页面,第一个测试检查登录失败。这行得通。

第二个测试检查登录是否成功。单独运行时,它工作正常。但是,与上面的一起运行,它失败了。在查看页面输出时,似乎用户名字段是第一个测试和第二个测试中的用户名的组合。

例如,第一个测试将用户名设置为“不存在”,第二个测试将用户名设置为“test”,如果我单独运行测试,这将有效。

如果我一起运行它们,用户名字段以“不存在的测试”结束

这表明 webdriver 不会在测试之间“重置”/“清除”页面。

有没有办法让它重置它?

我目前通过在@Before 测试的每个字段上调用 ​​clear() 方法来解决这个问题。

任何援助将不胜感激。

谢谢。

0 投票
3 回答
3547 浏览

java - 在 Arquillian 的测试中使用不同的 persistence.xml 文件

我正在使用一个标准的 Maven 项目,我在 java 资源文件夹中有一个 persistence.xml,在测试文件夹中有另一个 persistence.xml。如何在 arquillian 测试中使用 test 文件夹中的 persistence.xml?或者这不是正常的事情吗?

0 投票
3 回答
2135 浏览

java - 如何在 Arquillian 中测试 JPA

我正在尝试使用 Arquillian 来测试我的 JPA 存储库类。但是我只得到空指针异常告诉我它没有找到persistence.xml。如何在标准 Maven 项目中配置它?