Java junit测试套件:ClassNotFoundException
在ant中运行junit目标时,我得到了以下错误代码。EshopCoreTestSuite是一个框架,如下所示:Java junit测试套件:ClassNotFoundException,java,ant,junit,Java,Ant,Junit,在ant中运行junit目标时,我得到了以下错误代码。EshopCoreTestSuite是一个框架,如下所示: public class EshopCoreTestSuite extends TestSuite { public static Test suite() { TestSuite suite = new TestSuite(); suite.addTestSuite(CustomerContextTest.class);
public class EshopCoreTestSuite extends TestSuite {
public static Test suite() {
TestSuite suite = new TestSuite();
suite.addTestSuite(CustomerContextTest.class);
return suite;
}
public static void main(String[] args) {
TestRunner.run(EshopCoreTestSuite.class);} }
错误:
<error message="com.bgc.EshopCoreTestSuite" type="java.lang.ClassNotFoundException">java.lang.ClassNotFoundException: com.bgc.EshopCoreTestSuite ....
</error>
java.lang.ClassNotFoundException:com.bgc.EshopCoreTestSuite。。。。
junit目标:
<property name="COMP_TEST_SRC_DIR" location="test/java"/>
<property name="TEST_BUILD_DIR" location="build/test"/>
<property name="COMP_JAVA_SRC" location="src/java" />
<property name="COMP_BUILD" location="build" />
我只是把这条路弄糊涂了。我有src文件夹,在这个java和test文件夹下有java和test文件。我希望我给出了更多/错误的路径。
尝试更改:
<dirset dir="${TEST_SRC_DIR}"/>
致:
在那一节中。类路径必须包含生成的类,而不是源文件。如果要将类生成为../src/java
,请改用${COMP\u java\u src}
。(但这有点不标准。)
关键是这个
dirset
变量必须指向.class
文件所在的根。${TEST\u SRC\u DIR}
看起来可疑。难道你们并没有编译类(输出或bin)目录的特定变量吗?我已经编辑了主要问题。我只是把路径元素弄糊涂了,你能澄清一下吗。哼。。。目录结构中的com/bgc/EshopCoreTestSuite.class
文件在哪里?bgc esw core\src\test和此目录下的测试文件。bgc esw core\src\java,此包下的所有java文件。这是您需要指向的.class
文件。这些文件真的在src\java
中吗?对不起,类文件位于bgc esw core/target/classes/com/bgc/EshopCoreTestSuite.classes中,如果您还没有属性,请将其设置为该值(target/classes/),并在dirset
值中使用。
<dirset dir="${TEST_SRC_DIR}"/>
<dirset dir="${TEST_BUILD_DIR}"/>