Java 单元测试-读取xml文件

Java 单元测试-读取xml文件,java,unit-testing,junit,Java,Unit Testing,Junit,我正在尝试对一个加载和读取xml文件的类进行单元测试。 我正在使用NetBeans 这是我的班级结构 Class A { private String fileName; A (String fileName) { this.fileName = fileName; load(); } private load() { //here i load a xml file by given name } public readXml() { // read xml file and

我正在尝试对一个加载和读取xml文件的类进行单元测试。 我正在使用NetBeans

这是我的班级结构

Class A
{

private String fileName;

A (String fileName)
 {
  this.fileName = fileName;
  load();
 }
private load()
{
//here i load a xml file by given name
} 
public readXml()
{
// read xml file and return list of records
}
}
使用NetBeans,它生成了一些带有方法的测试类

  @BeforeClass
    public static void setUpClass() throws Exception {
    }

    @AfterClass
    public static void tearDownClass() throws Exception {
    }
 @After
    public void tearDown() {
    }
 @Before
    public void setUp() {
}
还有一种方法是TestReadXml

其中,我必须加载文件以执行方法readXml的单元测试,因为对于该类,我有一个方法加载,它在cunstrctor中被调用以加载文件,而方法readXml仅用于读取和返回记录

谢谢

编辑

要测试readXml方法,请给出输入xml文件中的预期结果。 首要任务是加载一个xml文件。 关键是我不知道在哪里做这个动作,所以我得到了一个错误

java.lang.NullPointerException
    at com.schober.main.ATest.testReadXml(ATest.java:83)
因为这里 AsserteQualExpResult,结果


结果为空

您应该测试类文件的所有公共方法和构造函数。测试将验证每个调用以及每个可能的输入是否给出了预期的结果

在您的例子中,您可以编写一些测试来测试构造函数。用不同的参数调用它,比如

表示可读且有效的xml文件的字符串 无效的 不表示文件或文件夹的字符串 表示文件夹的字符串 表示不包含xml代码的文件的字符串 表示包含格式错误的xml代码的文件的字符串 表示包含无效xml代码的文件的字符串 表示包含有效xml代码但使用不同架构的文件的字符串
你的问题是什么?如何读取文件?如何解析XML?我想知道当我有一个先决条件文件时,如何执行单元测试必须首先加载,因为我要测试的方法只读取XML而不加载。单元测试不应该避免像文件系统这样的依赖关系吗?我对应该模拟这种交互的理解有限,尽管我来这里是想问一个问题,解释如何模拟从输入字符串->文件系统->文件内容->有效xml模式->有效xml数据的交互层。