代码之家  ›  专栏  ›  技术社区  ›  JRL

如何重构类以便进行单元测试?

  •  1
  • JRL  · 技术社区  · 14 年前

    我试图对一个进行SAX解析并创建对象的类进行单元测试。

    一种方法是将XML文件放在测试项目的assets目录中,我可以使用 getContext().getAssets().open(filename InputStream 但是我的类需要一个URL字符串。我宁愿不必为这个类提供InputStream而不是当前的URL字符串。我可以通过创建两个方法来测试解析,一个接受一个字符串,另一个接受一个Inputstream,然后测试第二个,但是如何测试只接受一个字符串的方法呢?

    1 回复  |  直到 14 年前
        1
  •  0
  •   Tejs    14 年前

     string -> object // using lambda notation
    

    然后该方法不关心它有什么对象,只要它返回一些要解析的文本,即XHTML或XML。