我正在开发使用Android的java.xml.parsers.DocumentBuilder和DocumentBuilderFactory实现从XML文件加载信息的软件。 我正在编写对象的单元测试,我需要能够提供各种xml文件,这些文件将执行测试中的代码。 我正在使用Eclipse,并且有一个单独的Android测试项目。 我找不到将测试xml放入测试项目中的方法,以使被测代码可以打开文件。

如果我将文件放在测试项目的/ assets中,则被测试的代码看不到它。

如果我将文件放在要测试的代码的/ assets中,则当然可以看到文件,但是现在我只测试数据文件就使我的实际系统混乱了。

如果我手动将文件复制到/ sdcard / data目录,则可以从被测试的代码中打开它们,但这会干扰自动化测试。

关于如何具有不同的xml测试文件的任何建议都驻留在测试包中,但是对于被测代码可见。

这是我尝试构建单元测试的方法:

public class AppDescLoaderTest extends AndroidTestCase

{

private static final String SAMPLE_XML = "sample.xml";

private AppDescLoader m_appDescLoader;

private Application m_app;

protected void setUp() throws Exception

{

super.setUp();

m_app = new Application();

//call to system under test to load m_app using

//a sample xml file

m_appDescLoader = new AppDescLoader(m_app, SAMPLE_XML, getContext());

}

public void testLoad_ShouldPopulateDocument() throws Exception

{

m_appDescLoader.load();

}

}

由于SAMPLE_XML文件处于测试上下文中,因此无法使用,但是AndroidTestCase为被测系统提供了一个上下文,该系统无法从测试包中看到资产。

这是修改后的代码,适用于给出的每个答案:

public class AppDescLoaderTest extends InstrumentationTestCase

{

...

protected void setUp() throws Exception

{

super.setUp();

m_app = new Application();

//call to system under test to load m_app using

//a sample xml file

m_appDescLoader = new AppDescLoader(m_app, SAMPLE_XML, getInstrumentation().getContext());

}

Android单元测试读写文件,xml-如何为android单元测试提供数据文件相关推荐

  1. linux 进程间通信 dbus-glib【实例】详解四(上) C库 dbus-glib 使用(附代码)(编写接口描述文件.xml,dbus-binding-tool工具生成绑定文件)(列集散集函数)

    linux 进程间通信 dbus-glib[实例]详解一(附代码)(d-feet工具使用) linux 进程间通信 dbus-glib[实例]详解二(上) 消息和消息总线(附代码) linux 进程间 ...

  2. android用sax解析xml,详解android使用SAX解析XML文件

    解析XML的方式有很多种,大家比较熟悉的可能就是DOM解析. DOM(文件对象模型)解析:解析器读入整个文档,然后构建一个驻留内存的树结构,然后代码就可以根据DOM接口来操作这个树结构了. 优点:整个 ...

  3. android 平板安装程序开发者,如何为Android Pad开发应用程序

    大家都知道,Android 2.3 SDK发布的时候,在SDK中增加了第三方add-ons,其中就包括了针对平板电脑的Galaxy Tab Addon. 当我们启动一个新的平板电脑模拟器的时候,首先我 ...

  4. android rfid 读写sdk,Android-SDK-1.0.0-STD android手机调用RFID模块读取电子标签Demo - 下载 - 搜珍网...

    Before_Opening_Solution.txt notice.txt revision_history.doc RFIDHost Documents/bluetooth_paring.doc ...

  5. Android单元测试读写文件,Android-单元测试

    Android的单元测试有两种方式:本地单元测试和设备单元测试,本地单元测试可以直接运行在本地机器上面的Java Virtual Machine(JVM).它的特点是运行时间短,执行效率高,但是没有A ...

  6. Android单元测试读写文件,Android Studio单元测试:读取数据(输入)文件

    根据android-gradle-plugin版本: 1.版本1.5和更高版本: 只需把json文件到src / test / resources / test.json并引用它 classLoade ...

  7. qt android文件读写文件,qt android 开发之写入xml配置文件篇

    应用初始化本地数据,需要读取配置文件,小编介绍如何通过xml简单写入配置文件,至于为什么选择这个格式,主要因为在qml中有一个很好 的类使用:XmlListModel xmlListModel能直接读 ...

  8. Android单元测试读写文件,如何在Android单元测试中读取仅测试文件

    对于我的Android应用程序,我正在编写需要读取一些文件的单元测试. 由于这些是仅测试文件,因此我不希望它们出现在res文件夹中,因为我不希望它们最终出现在最终的.apk文件中. 我想做与此问题类似 ...

  9. Android读写assets、raw、sdard和工程文件的方法

    Android开发离不开对文件的操作,前面的文章"Android简易数据存储之SharedPreferences"和"Android数据存储之SQLite的操作" ...

最新文章

  1. 【Android NDK 开发】JNI 动态注册 ( 动态注册流程 | JNI_OnLoad 方法 | JNINativeMethod 结构体 | GetEnv | RegisterNatives )
  2. 版本控制集中式与分布式的区别
  3. iframe和HTML5 blob实现JS,CSS,HTML直接当前页预览
  4. mysql5.7开启远程连接
  5. 2017微服务 mysql集群_成功升P7多亏掌握了这几点:高并发+Nginx+微服务+Redis+MySQL...
  6. 【CodeForces - 675C】Money Transfers(思维,前缀和)
  7. 3分钟搞懂MySQL事务隔离级别及SET TRANSACTION影响事务
  8. Python爬取Boss直聘,帮你获取全国各类职业薪酬榜
  9. Elasticsearch学习之基本核心概念
  10. 使用静态容器防止并发修改同一对象
  11. 转载 2012年游戏行业人才需求预测
  12. [置顶]       jBPM4工作流开发实战 之 第二部分 jBPM4开发入门
  13. eltable表头高度无法设置_厨房吊顶高度一般多少?厨房吊顶安装需要注意什?...
  14. 线性同余法产生(0,1)均匀分布的随机数
  15. NSACE|企业网络安全问题,千万别不在乎
  16. CAD梦想画图中如何设置图层
  17. android箭头的样式修改,安卓自定义控件 一个指示用的箭头
  18. 用正则表达式制作单线程小说网站小说下载器
  19. 节约粮食海报|节约粮食就是对袁隆平院士最好的怀念!
  20. gis空间校正没反应_使用ArcGIS进行空间校正的步骤(矢量数据)

热门文章

  1. 开发门槛被低代码降低,传统企业IT岗的活路在哪里
  2. 求求了!让 Python 的热搜消失吧!!
  3. Rust 越来越香了!AWS 雇佣 Rust 编译器团队负责人 Felix Klock
  4. 开源,如何以商业化模式打造万亿企业应用市场?
  5. 首提“智能X效应”,英特尔携手产业加速智能变革
  6. 这次要说不明白 immutable 类,我就怎么地!
  7. 漫画:什么是 “智猪博弈” ?
  8. 腾讯 QQ 产品已经实现全量上云;中科院计算所发明新编程语言“木兰”;Electron 7.1.9 发布 | 极客头条...
  9. MySQL 面试必备 8 个知识点
  10. 多线程编程是后台开发人员的基本功