android测试夹具

时间:2012-04-11 18:16:09

标签: android testing

我正在开发一个Android应用程序,我已经为单元测试创​​建了一个新的测试项目。建议存放测试装置的位置(如xml文件等)以及访问它的正确方法是什么?

2 个答案:

答案 0 :(得分:1)

这取决于您是指真正的单元测试还是仪器测试(例如使用浓缩咖啡和东西)...

单元测试:

  1. 将设备放入src/test/resources(例如src/test/resources/fixture.json
  2. 从测试类中访问它们,例如使用:

InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("fixture.json")

仪器测试:

  1. 将设备放入src/androidTest/assets/(例如src/androidTest/assets/fixture.json
  2. 从测试类中访问它们,例如使用:

InputStream is = InstrumentationRegistry.getContext().getResources().getAssets().open("fixture.json")

Here是如何将InputStream转换为String的一些示例。

Here's a pretty good post描述了不同的情况。


P.S。 我知道这个问题已有6年以上的历史了……解答以后的任何搜索。

答案 1 :(得分:0)

经过一番搜索,我发现在Android中没有一种正确的方式来存储灯具(在java中也没有那么多)。

Fixtures是一种提供简单一致的数据传递到测试用例的方法。使用返回对象的静态方法创建.java类是一种可行的方法。

示例:

public class Pojos {

    public static List<TaskListItem> taskListItems() {
        return Arrays.asList(
                new TaskListItem("one"),
                new TaskListItem("two"),
                new TaskListItem("three")
        );
    }
}