2010-01-23 62 views
1

嗨,大家好,我有一个j2ee应用程序,我正在用Netbeans构建。我的任务是修改build.xml,以便在应用程序构建后,ANT将应用程序部署到服务器,在应用程序上运行Junit任务,然后取消部署应用程序。到目前为止,我有部署和部署工作,但运行junit任务时遇到了一些麻烦。创建ANT脚本部署到glassfish,运行junit测试,然后取消部署

我在Netbeans有一个客户端项目,我的工作任务在于此。我的麻烦是,当这个项目建成时,它不会编译我的junit测试到.jar中。这会导致问题,当我运行我的ant junit任务和ANT无法找到junit测试适当的.class文件。

在Netbeans项目属性中,它允许我设置“源包文件夹”和“测试包文件夹”。如果我将“测试”文件夹添加到“源包文件夹”中并构建项目,它将编译测试并将它们包括在jar中。这有效,但它阻止我运行我的junit测试作为netbeans中的测试,这会降低开发速度。

有没有人有解决这个问题的经验?我可能忽略了一个简单的解决方案,如果有人有任何建议,我将不胜感激。提前致谢。

-Brad

回答

0

如果我理解你的要求,

你不应该需要将测试类编入瓦罐。只需将它们编译到某个目录中,说'类'即可。然后,将该目录包含在junit任务的文件集嵌套元素中。

一个简单的例子,

<target name="junit"> 
    <junit printsummary="true"> 
    <classpath> 
     <pathelement location="${classes.dir}"/> 
    </classpath> 

    <test name="test.class.TestClass"/> 
    </junit> 
</target> 
+0

我想出了我做错了什么。我正在将我的类路径指向我的junit测试,以深入目录。这是一个noob错误。我指着com/blah/blah2/blah3这显然不起作用。 – bradd 2010-01-25 23:38:40

0

只好我junit任务指向正确的类路径。指向.class文件(project1/classes/com/blah/blah2/blah3)的确切目录是不正确的。将classpath设置为project1/classes并且它工作。 Noob错误。