测试片段1示例:
File file = new File("aa.txt");
delFlg = file.delete();
if (delFlg) {
logger.log("Success");
} else {
logger.log("Error");
return;
}
测试片段2示例:
FileOutputStream os = null;
try {
。
os = new FileOutputStream(file);
。
} catch (FileNotFoundException e) {
return true;
} catch (IOException ioe) {
return true;
} finally {
if (null != os) {
try {
os.close();
} catch (IOException e) {
return true;
}
}
} }
我要问的是:写JUnit的时候,如何覆盖到片段(1)(2)的红色部分,也就是如何做出文件删除失败和OS关闭出现IOException。
希望做过或者知道的留个法子,先谢了。
File file = new File("aa.txt");
delFlg = file.delete();
if (delFlg) {
logger.log("Success");
} else {
logger.log("Error");
return;
}
测试片段2示例:
FileOutputStream os = null;
try {
。
os = new FileOutputStream(file);
。
} catch (FileNotFoundException e) {
return true;
} catch (IOException ioe) {
return true;
} finally {
if (null != os) {
try {
os.close();
} catch (IOException e) {
return true;
}
}
} }
我要问的是:写JUnit的时候,如何覆盖到片段(1)(2)的红色部分,也就是如何做出文件删除失败和OS关闭出现IOException。
希望做过或者知道的留个法子,先谢了。
解决方案 »
- getResourceAsStream与直接new出一个InputStream的子类
- java编写服务器传送图片问题
- 为什么我的转义字符"\t"没有起作用
- 这个Java问题怎样改? public 我明明声明了 。还有 损失精度怎么回事。请教大虾
- 小程序
- 求助:那为高手可以给我解释一下javabean是什么意思啊?
- 修改FileDialog类
- JTextField不获得焦点的问题
- 关于数据库的问题:很简单的,给我解决一下。
- 有多个业务,业务间可并行,但业务内需要顺序执行,利用java如何实现
- 关于java.text.MessageFormat的问题
- 第二次发此贴了,难道这个问题在中国真的无解了吗?
第二种情况可以试试编辑文件,但是程序中文件IO太快了,可以让线程先sleep一会儿再关闭IO
第一个CASE很好模拟,先整个IO流操作某个TEMP文件,先不关闭这个流,然后对齐删除,必定删除失败。
第二个CASE比较难以模拟,想了好多办法都不行。最后放弃了。
关于第二个CASE,如果大家有什么想法或者办法,希望大家给我留言。