gpt4 book ai didi

netbeans - 将junit测试单文件目标添加到netbeans中的自由格式java项目

转载 作者:行者123 更新时间:2023-12-03 06:41:42 24 4
gpt4 key购买 nike

我保证,我已阅读:http://netbeans.org/kb/articles/freeform-config.html

我有一个 java 自由格式项目,我想对其进行修改,以将“测试单个文件”目标包含到 Netbeans 7.2 中的上下文菜单中

所包含的链接概述了创建一个名为“test.single”的操作(为了覆盖 Netbeans 的“测试单个文件”命令),并且在该操作创建中,必须指定一个 ant 目标和一个上下文对象,如下所示:

<context>
<property>testclass</property>
<folder>${current.dir}</folder>
<pattern>\.java$</pattern>
<format>java-name</format>
<arity>
<one-file-only/>
</arity>
</context>

总而言之,我有:

在 ide-actions block 内的 project.xml 中创建操作:

<action name="test.single">                                     
<target>test-single</target>

<context>
<property>testclass</property>
<folder>${current.dir}</folder>
<pattern>\.java$</pattern>
<format>java-name</format>
<arity>
<one-file-only/>
</arity>
</context>
</action>

将 ide-action 添加到上下文菜单 block 中”

<ide-action name="test.single"/>

将其添加到自由格式项目的project.xml 文件中,右键单击项目名称后,上下文菜单中会出现一个灰色的“test.single”条目。此外,右键单击 src/test 目录中的测试类会生成灰色的“测试单个文件”条目。

我已经检查并验证了 xml,一切似乎都已通过。我可能做错了什么?

提前致谢!

最佳答案

遇到了同样的问题,并通过克隆 nbproject/project.xml 中的操作 run.single 并将其命名为 test.single 来解决它:

<action name="test.single">
<script>build.xml</script>
<target>test-single</target>
<context>
<property>test.class</property>
<folder>src/java</folder>
<pattern>\.java$</pattern>
<format>java-name</format>
<arity>
<one-file-only/>
</arity>
</context>
</action>

我还将属性更改为 test.class,因为我们需要在项目 build.xml 中使用它来运行适当的测试类。

在主 build.xml 中,我有一个目标 test-single:

<target name="test-single" description="Run individual Unit tests" depends="compile, compile-test" >  
<junit
printsummary="yes"
errorProperty="test.failed"
failureproperty="test.failed"
haltonfailure="yes"
fork="yes"
showoutput="yes">
<formatter type="plain" usefile="false"/>
<classpath>
<pathelement location="${build.base.classes.dir}" />
<pathelement location="${unit.test.classes.dir}" />
<pathelement location="${junit.dir}" />
</classpath>
<test name="${test.class}Test" todir="${results}">
</test>
</junit>
<fail message="Tests failed!" if="test.failed"/>
</target>

请注意, 指的是属性 ${test.class}。但是当我这样保留它时,它会尝试运行正在测试的类而不是 JUnit 测试类。由于这总是与最后带有“Test”一词的被测试类相同,因此我将其编写为 ${test.class}Test。

关于netbeans - 将junit测试单文件目标添加到netbeans中的自由格式java项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15207207/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com