编写junit测试类 import org.junit.Test;
1. 添加依赖
<!-- Spring Boot Starter Test -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
2. 编写测试类
测试类位于src/test/java
目录下,并且与主应用代码在同一包或子包中。例如,如果你有一个名为UserService
的服务类,你可以创建一个名为UserServiceTest
的测试类。
测试方法命名: testMethod
接口:
package com.XXX.bbb.core.service.order;
import java.util.List;
/**
* @version v1.0
* @author<a href="test">test</a>
* @since
*/
public interface TmsOrderExtendManager extends TmsOrderManager{
//签收单预警
void autoWarningReceiptEmail(String organUnikey, String modelUnikey);
//货物预计出货日期未安排预警
void autoWarningShipmentEmail(String organUnikey, String modelUnikey);
//需求到厂预警
void autoWarningArriveEmail(String organUnikey, String modelUnikey);
//在途延期异常预警
void autoWarningDelayEmail(String organUnikey, String modelUnikey);
/**
* 推送TMS回传状态信息
* 调度单状态推送 dispatchOrderStatus T在途 D运抵 P签收
* @param orders
*/
void pushTMSReturnStatusInfoApi(List<OmsOrder> orders,String dispatchOrderStatus);
}
实现类:
package com.XXX.bbb.core.service.order.pojo;
import lombok.extern.slf4j.Slf4j;
import java.math.BigDecimal;
import java.util.Calendar;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
/**
* @version v1.0
* @author<a href="test">test</a>
* @since
*/
@Service("tmsOrderManager")
@Slf4j
public class DefaultTmsOrderManager extends AbstractTmsOrderManager implements TmsOrderExtendManager {
@Autowired
private IntfServiceSender intfServiceSender;
@Autowired
private BaseInterfaceLogManager interfaceLogManager;
@Autowired
public DefaultTmsOrderManager( TmsToBaseManager tmsToBaseManager, IntfServiceSender intfServiceSender,BaseInterfaceLogManager interfaceLogManager ) {
this.tmsToBaseManager = tmsToBaseManager;
this.intfServiceSender = intfServiceSender;
this.interfaceLogManager = interfaceLogManager;
}
@Autowired
private MaMessageCenterManager maMessageCenterManager;
@Autowired
private MaExpressCenterSendManager maExpressCenterSendManager;
@Override
@Transactional
public void unActive(OmsOrder omsOrder) {
System.out.printf("111");
}
@Override
@Transactional
public void saveOrderDetail(Long orderId, OmsOrderDetail orderDetail) {
System.out.printf("111");
}
@Override
@Transactional
public void refreshOrderQVW(Long orderId) {
System.out.printf("111");
}
@Override
@Transactional
public void saveOmsOrder(OmsOrder omsOrder) {
System.out.printf("111");
}
//签收单预警
@Override
public void autoWarningReceiptEmail(String organUnikey, String modelUnikey) {
System.out.printf("111");
}
//需求到厂预警
@Override
public void autoWarningArriveEmail(String organUnikey, String modelUnikey) {
System.out.printf("111");
}
//在途延期异常预警
@Override
public void autoWarningDelayEmail(String organUnikey, String modelUnikey) {
System.out.printf("111");
}
@Override
public void active(OmsOrder order) {
System.out.printf("111");
}
}
测试方法:
package com.XXX.bbb.core.service.order.pojo;
import com.XXX.bbb.core.service.order.TmsOrderExtendManager;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.context.annotation.Lazy;
import org.springframework.test.context.TestPropertySource;
import org.springframework.test.context.junit4.SpringRunner;
/**
* @version v1.0
* @author<a href="test">test</a>
* @since
*/
@RunWith(SpringRunner.class)
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
@TestPropertySource(locations = "classpath:application.yml")
public class DefaultTmsOrderManagerTest {
@Lazy
@Autowired
// @Qualifier("tmsOrderManager")
private TmsOrderExtendManager tmsOrderManager;
@Autowired
private BeanFactory beanFactory;
@Test
public void testAutoWarningShipmentEmail() {
// BeanFactory beanFactory = new XmlBeanFactory(new ClassPathResource("applicationContext.xml"));
// DefaultTmsOrderManager tmsOrderManager = (DefaultTmsOrderManager) beanFactory.getBean("tmsOrderManager");
// 测试代码
tmsOrderManager.autoWarningShipmentEmail(null, null);
//tmsOrderManager.loadOmsOrderByCode("WO2504010002");
System.out.printf("111");
}
}