我正在使用Robotium来自动化Android应用程序。为此创建了一个android测试项目。在项目文件夹内部我想保留一些文件,如.properties / .xls等,并希望读/写这些文件。例如,我的Android测试项目目录下有一个config.properties文件( src / main / java / config ),我想通过编码访问该文件:
对于普通的Java项目,我使用以下代码片段来加载 config.properties 文件:
CONFIG = new Properties();
FileInputStream fs = new FileInputStream(System.getProperty("user.dir")+"/src/main/java/config/config.properties");
CONFIG.load(fs);
这个相同的代码 - 当作为Android JUnit项目执行时抛出错误说 java.io.FileNotFoundException://src/main/java/config/config.properties:open failed:ENOENT(没有这样的文件或目录) ,无法找到该文件。
如果有人在任何时候遇到这种情况,请帮助我完成。
由于
Sitam Jana Software QA Enginner Mindfire Solutions
答案 0 :(得分:2)
您无法以这种方式访问java项目的内部结构。当您在设备上安装apk时,您的Java代码将转换为Dalvik虚拟机的dex代码,并且您将没有项目中的文件结构。
您可以尝试以下操作:
如果您只想阅读config.properties,则应使用http://developer.android.com/reference/android/content/res/AssetManager.html类,并将config.properties放在项目的/ assets /中。
如果您还想编写.properties文件,请考虑创建如下临时文件:Creating temporary files in Android。
最诚挚的问候。