我保证,我读过:http://netbeans.org/kb/articles/freeform-config.html
我有一个java自由格式项目,我想修改它以在 Netbeans 7.2
中的上下文菜单中包含“测试单个文件”目标包含的链接概述了创建名为“test.single”的操作(为了覆盖Netbeans的Test Single File命令),并且在该操作创建中,必须指定一个ant目标和一个上下文对象,如下所示: / p>
<context>
<property>testclass</property>
<folder>${current.dir}</folder>
<pattern>\.java$</pattern>
<format>java-name</format>
<arity>
<one-file-only/>
</arity>
</context>
总而言之,我有:
在ide-actions块中的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添加到上下文菜单块“
<ide-action name="test.single"/>
将此项添加到自由格式项目的project.xml文件中,在右键单击项目名称时,会在上下文菜单中生成灰色的“test.single”条目。此外,右键单击我的src / test目录中的测试类会产生灰色的“测试单个文件”条目。
我已经检查并验证了xml,似乎一切都结束了。我能做错什么?
提前感谢!
答案 0 :(得分:1)
遇到同样的问题并设法通过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中运行它来运行相应的测试类。
在main build.xml中,我有一个目标测试单:
<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。