เมื่อพยายามเริ่ม JUnit-Test จาก Eclipse ฉันจะได้รับ "ClassNotFoundException" เมื่อเรียกใช้ "mvn test" จากคอนโซลทุกอย่างทำงานได้ดี นอกจากนี้ไม่มีรายงานปัญหาใน Eclipse
โครงสร้างโครงการของฉันมีดังต่อไปนี้:
- โครงการแม่ (pom-packaging)
- โครงการเว็บ (บรรจุภัณฑ์สงคราม - การทดสอบ JUnit ของฉันอยู่ที่นี่)
- โครงการ Flex
- โครงการกำหนดค่า
แก้ไข: ไม่พบคลาสได้อย่างไร? เป็นแอปพลิเคชัน HelloWorld ที่เรียบง่ายโดยไม่มีไลบรารีพิเศษ
นี่คือการกำหนดค่าการเรียกใช้ JUnit ของฉัน: ข้อความแสดงแทน http://www.walkner.biz/_temp/runconfig.png
Testclass (แต่อย่างที่บอกมันใช้ไม่ได้กับ HelloWorld แบบธรรมดาเช่นกัน ... ):
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import biz.prognoserechnung.domain.User;
import biz.prognoserechnung.domain.UserRepository;
import biz.prognoserechnung.domain.hibernate.UserHibernateDao;
public class UserDaoTest {
/**
* the applicationcontext.
*/
private ApplicationContext ctx = null;
/**
* the user itself.
*/
private User record = null;
/**
* Interface for the user.
*/
private UserRepository dao = null;
@Before
public void setUp() throws Exception {
String[] paths = { "WEB-INF/applicationContext.xml" };
ctx = new ClassPathXmlApplicationContext(paths);
dao = (UserHibernateDao) ctx.getBean("userRepository");
}
@After
public void tearDown() throws Exception {
dao = null;
}
@Test
public final void testIsUser() throws Exception {
Assert.assertTrue(dao.isUser("John", "Doe"));
}
@Test
public final void testIsNoUser() throws Exception {
Assert.assertFalse(dao.isUser("not", "existing"));
Assert.assertFalse(dao.isUser(null, null));
Assert.assertFalse(dao.isUser("", ""));
}
}