您的位置:首页 > 其它

junit与testng 分别和mockito 结合使用例子

2018-01-22 16:11 549 查看
pom文件 引入:

<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.8.8</version>
<scope>test</scope>
</dependency>

使用junit:
@RunWith(MockitoJUnitRunner.class)
public class MockTest {

@Before
public void init() {
MockitoAnnotations.initMocks(this);
}

@InjectMocks
TestSendService testSendService = new TestSendServiceImpl();

@InjectMocks
NoticeTSendProxy noticeTSendProxy;

@Test
public void mockTest() {
Map<String, String> paramMap = new HashMap<String, String>();
paramMap.put("source", From.JBP.from());
noticeTSendProxy.testSendSms(paramMap, getOrderMappingDTO(ChannelStore.SMS.toString(), JBPTestSendCommandType.TEST_SNED_ADVICE_COMMAND,
"单元测试()", "18512581771"));
// testSendService.testSend4Jbp(getOrderMappingDTO(ChannelStore.SMS.toString(), JBPTestSendCommandType.TEST_SNED_ADVICE_COMMAND, "单元测试()", "18512581771"));
}

private OrderMappingDTO getOrderMappingDTO(String channelCode, String orderType, String content, String mobiles) {
OrderMappingDTO orderMappingDTO = new OrderMappingDTO();
orderMappingDTO.setChannel(channelCode);
orderMappingDTO.setOrderType(orderType);
orderMappingDTO.setSmsContent(content);
orderMappingDTO.setMobile(mobiles);
return orderMappingDTO;
}
}

使用testng:
public class OrderSendServiceTest extends BaseTest {

// @Autowired
// TestSendService testSendService;
@InjectMocks
private TestSendService testSendService;

@BeforeClass
public void beforeClass() {
// 自动将依赖的类注入待测类
MockitoAnnotations.initMocks(this);
}

@Test
public void orderSendTest() {
// Assert.assertNotNull(testSendService, "Create orderSendService instance Fail.");

// 测试发送短信
testSendService.testSend4Jbp(getOrderMappingDTO(ChannelStore.SMS.toString(),
JBPTestSendCommandType.TEST_SNED_ADVICE_COMMAND, "单元测试()", "18512581771"));

// 测试发送PUSH
testSendService.testSend4Jbp(getOrderMappingDTO(ChannelStore.SMS.toString(),
JBPTestSendCommandType.TEST_SNED_ADVICE_COMMAND, "单元测试()", "18512581771"));
}

/***
* 待发送的数据
* @param channelCode
* @param orderType
* @param content
* @param mobiles
* @return
* @see [相关类/方法](可选)
* @since [产品/模块版本](可选)
*/
private OrderMappingDTO getOrderMappingDTO(String channelCode, String orderType, String content, String mobiles) {
OrderMappingDTO orderMappingDTO = new OrderMappingDTO();
orderMappingDTO.setChannel(channelCode);
orderMappingDTO.setOrderType(orderType);
orderMappingDTO.setSmsContent(content);
orderMappingDTO.setMobile(mobiles);
return orderMappingDTO;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: