文章17 | 阅读 4379 | 点赞0
Mockito是什么?
Mockito是一种隔离功能类的测试方法。Mockito不需要数据库连接或属性文件读取或文件服务器读取来测试功能。模拟对象做真实服务,模拟对象返回与传递给它的一些虚拟输入对应的虚拟数据。
Mockito 方便、无缝地创建模拟对象。它使用 Java 反射为给定的接口创建模拟对象。模拟对象只不过是实际实现的代理。
假定一个股票服务的案例, 它返回股票的价格细节。在开发过程中, 实际的库存服务不能用于获取实时数据。所以我们需要一个虚拟的股票服务的实现。Mockito 也可以很容易地做到。
请参考下面的代码段。
package com.tutorialspoint.mock;
import java.util.ArrayList;
import java.util.List;
import static org.mockito.Mockito.*;
public class PortfolioTester {
public static void main(String[] args){
//Create a portfolio object which is to be tested
Portfolio portfolio = new Portfolio();
//Creates a list of stocks to be added to the portfolio
List<Stock> stocks = new ArrayList<Stock>();
Stock googleStock = new Stock("1","Google", 10);
Stock microsoftStock = new Stock("2","Microsoft",100);
stocks.add(googleStock);
stocks.add(microsoftStock);
//Create the mock object of stock service
StockService stockServiceMock = mock(StockService.class);
// mock the behavior of stock service to return the value of various stocks
when(stockServiceMock.getPrice(googleStock)).thenReturn(50.00);
when(stockServiceMock.getPrice(microsoftStock)).thenReturn(1000.00);
//add stocks to the portfolio
portfolio.setStocks(stocks);
//set the stockService to the portfolio
portfolio.setStockService(stockServiceMock);
double marketValue = portfolio.getMarketValue();
//verify the market value to be
//10*50.00 + 100* 1000.00 = 500.00 + 100000.00 = 100500
System.out.println("Market value of the portfolio: "+ marketValue);
}
}
让我们了解一下上述程序的重要概念。完整代码可在第一个应用程序.
翻译自:https://www.tutorialspoint.com/mockito/mockito_overview.htm
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://chenjianfei.blog.csdn.net/article/details/79546084
内容来源于网络,如有侵权,请联系作者删除!