Arquillian / JUnit无法在Eclipse中的JBoss Tools生成项目中运行

时间:2014-04-30 23:27:16

标签: eclipse junit jboss jboss-arquillian

我正在使用Eclipse Kepler和JBoss 7.1.1,并使用JBoss Tools Central生成“Java EE Web Project”模板项目。该项目成功生成并运行良好。但是,在启动服务器之后,当我单击项目并选择Run as JUnit Test时,我遇到了一些问题:

1)控制台显示'已部署'test.war“'。但是控制台和Kepler JUnit View都没有显示任何测试信息。作为测试,我在MemberRegistrationTest.java的自动生成代码中更改了以下行: assertNotNull(newMember.getId()); 成为 assertNull(newMember.getId());

强制断言。但是,我没有在控制台中输出任何输出,也没有在显示此断言的JUnit视图中输出。据我所知,Run as JUnit Test要么根本没有运行,要么无法显示任何结果。

2)每次运行Junit Test时,我都会在\ standalone \ data \ content中添加一个或多个文件夹,每个文件夹都以两位十六进制字符命名(例如“87”),该文件夹包含另一个具有38个十六进制字符名称的文件夹(例如“ed8525e1a637334f002e6c4ebec047445b0ec3”)。在该文件夹中是一个名为“content”的文件,大小约为750k。每次我运行测试时,我都会获得更多这些文件夹,并且它们永远不会被清除。此外,在JBoss配置文件standalone.xml中,我发现添加了以下内容:

<deployments>
    <deployment name="test.war" runtime-name="test.war">
        <content sha1="87ed8525e1a637334f002e6c4ebec047445b0ec3"/>
    </deployment>
</deployments>

其中“87ed8525e1a637334f002e6c4ebec047445b0ec3”对应于文件夹“87”和子文件夹“ed8525e1a637334f002e6c4ebec047445b0ec3”(例如)。 (似乎40 char SHA1哈希用于命名这两个文件夹。)如果我删除项目并要求将其从磁盘中删除,我会收到一条错误,指出“处理重构时已捕获异常”删除资源'和详细信息显示它无法删除项目文件夹。然后,当我重新启动Kepler并尝试重新创建具有相同名称的项目时,我得到它已经存在的错误。如果我然后关闭Kelper我得到一个错误“该项目无法更新。“此外,该块保留在standalone.xml中。

有人可以解释为什么这个“开箱即用”的未经改动的项目“未能”进行测试,并在我尝试删除它时弄乱了开普勒的项目管理?

谢谢。 人

1 个答案:

答案 0 :(得分:-1)

我遇到了同样的问题。基于我对测试用例的初步调整,如果收缩包装部署不包括所有必需的类,则Arquillian 1.1.4.Final似乎是静默挂起的。我的症状是,在部署的应用程序&#34;之后,测试运行无限期地挂起。信息。至少在一种情况下,检查测试代码并在测试代码中提到但未添加到shrinkwrap中的几个类添加到shrinkwrap,导致问题消失。当我了解更多时,我会更新。