上次说到了文件操作,但是要想测试文件操作是否成功,需要编写界面布局测试。这样既浪费时间,又不能排除错误。
下面说一种简单的测试方法:
1.上次说到,将文件读写操作封装成一个类FileServer.java:
public class FileService {
private Context context;
public FileService(Context context){
this.context=context;
}
//文件保存
public void save(String filename,String filecontext) throws IOException{
FileOutputStream fileOutputStream=context.openFileOutput(filename,Context.MODE_WORLD_WRITEABLE+Context.MODE_WORLD_READABLE);
fileOutputStream.write(filecontext.getBytes());
fileOutputStream.close();
}
//文件读取
public String readFile(String fileName) throws IOException{
FileInputStream fileInputStream=context.openFileInput(fileName);
byte[] bs=new byte[1024];
int len=0;
ByteArrayOutputStream arrayOutputStream=new ByteArrayOutputStream();
while((len=fileInputStream.read(bs))!=-1){
arrayOutputStream.write(bs, 0, len);
}
byte[] bs2=arrayOutputStream.toByteArray();
arrayOutputStream.close();
fileInputStream.close();
return new String(bs2);
}
}
2.编写一个测试类FileServerTest.java:
public class FileServiceTest extends AndroidTestCase {
//文件保存的测试
public void testSave() throws IOException{
FileService fileService=new FileService(getContext());
fileService.save("Hello.txt", "你好!!");
}
//文件读取的操作
public void testReadFile() throws IOException{
FileService fileService=new FileService(getContext());
String file=fileService.readFile("first.txt");
System.out.println("filecontext"+file);
}
}
3.在编写测试类FileServerTest.java之前,在
AndroidManifest.xml文件中
application标签中加入如下代码:
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<uses-library android:name="android.test.runner" />
<activity
android:name="cn.bzu.example.filestream.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<instrumentation
android:name="android.test.InstrumentationTestRunner"
android:targetPackage="cn.bzu.example.filestream" >
</instrumentation>
点击运行:
如果在环境的左侧,出现绿色的条,则测试通过。如果出现红色的条,则测试失败。