我有下面的代码,读取CSV文件,并把应用程序启动时的值到HashMap。我是新的Junit,请建议如何测试下面的类。
@Component
public class Cache implements InitializingBean {
private static Map<String, String> map = new HashMap<>();
@Override
public void afterPropertiesSet() throws Exception {
try {
BufferedReader reader = new BufferedReader(new FileReader("file.csv"));
String details = null;
while ((details = reader.readLine()) != null) {
String[] values = details.split(",", 2);
String firstString = values[0];
String secondString = values[1];
map.put(firstString, secondString);
}
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
字符串
1条答案
按热度按时间s71maibg1#
你不需要测试
BufferedReader
,这里也不能使用Mockito
,因为你需要在代码中手动示例化对象。你只需要将代码拆分:将阅读逻辑移到新方法中(例如readCsvFile()
),然后为它编写测试。字符串
然后,您可以为该高速缓存bean编写一个测试,使其在启动后不为空