我们正在评估CodePro analytix以生成jUnits。我们正在spring3.0上开展一个web项目。截至目前,CodePro正在生成无用的jUnits。它生成相同的测试用例。 (我已经指定了spring-test.jar,如手册所示)。
如果您在Spring项目中使用此工具进行jUnit生成,那么请帮忙。我假设我们必须在某处指定我们的spring-configuration
xml,否则它将如何了解 DI 。此外,我们可能需要模拟一些所需的对象,但不确定。
答案 0 :(得分:2)
完成codepro插件设置后,右键单击类或包 - >选择生成Junit测试用例。
它将为您的班级生成测试课程。然后在setup方法中,你必须设置spring config XML。
<强> ServiceFacadeImpl.Java:强>
public class ServiceFacadeImpl implements ServiceFacade {
private ServiceDAO serviceDAO;
@Override
public ServiceVO getService(int serviceId) {
return (ServiceVO) serviceDAO.getById(serviceId);
}
@Override
public List<ServiceVO> getServices() {
String criteria = " WHERE activeSwitch='Y' ORDER BY lastUpdatedDt DESC";
return (List<ServiceVO>) serviceDAO.getAll(criteria);
}
/**
* @return the serviceDAO
*/
public ServiceDAO getServiceDAO() {
return serviceDAO;
}
/**
* @param serviceDAO
* the serviceDAO to set
*/
public void setServiceDAO(ServiceDAO serviceDAO) {
this.serviceDAO = serviceDAO;
}
}
* Codepro生成的类*
<强> ServiceFacadeImplTest.java:强>
public class ServiceFacadeImplTest {
private ServiceFacadeImpl serviceFacadeImpl;
ServiceFacadeImpl fixture = null;
/**
* Run the ServiceVO getService(int) method test.
*
* @throws Exception
*
* @generatedBy CodePro at 7/7/13 10:34 PM
*/
@Test
public void testGetService_1() throws Exception {
List<ServiceVO> result = fixture.getServices();
int serviceId = 0;
ServiceVO result1 = fixture.getService(1);
assertNotNull(result1);
}
/**
* Run the List<ServiceVO> getServices() method test.
*
* @throws Exception
*
* @generatedBy CodePro at 7/7/13 10:34 PM
*/
@Test
public void testGetServices_1() throws Exception {
List<ServiceVO> result = fixture.getServices();
assertNotNull(result);
}
/**
* Perform pre-test initialization.
*
* @throws Exception
* if the initialization fails for some reason
*
* @generatedBy CodePro at 7/7/13 10:34 PM
*/
@SuppressWarnings("resource")
@Before
public void setUp() throws Exception {
this.setServiceFacadeImpl((ServiceFacadeImpl) new ClassPathXmlApplicationContext(
"applicationContext-facade.xml").getBean("serviceFacade"));
fixture = this.getServiceFacadeImpl();
}
/**
* Perform post-test clean-up.
*
* @throws Exception
* if the clean-up fails for some reason
*
* @generatedBy CodePro at 7/7/13 10:34 PM
*/
@After
public void tearDown() throws Exception {
// Add additional tear down code here
}
/**
* Launch the test.
*
* @param args
* the command line arguments
*
* @generatedBy CodePro at 7/7/13 10:34 PM
*/
public static void main(String[] args) {
new org.junit.runner.JUnitCore().run(ServiceFacadeImplTest.class);
}
/**
* @return the serviceFacadeImpl
*/
public ServiceFacadeImpl getServiceFacadeImpl() {
return serviceFacadeImpl;
}
/**
* @param serviceFacadeImpl
* the serviceFacadeImpl to set
*/
public void setServiceFacadeImpl(ServiceFacadeImpl serviceFacadeImpl) {
this.serviceFacadeImpl = serviceFacadeImpl;
}
}
在setup()方法中,我们必须加载spring config xml,上面我已经加载了applicationContext-facade.xml