gpt4 book ai didi

java - Sax 解析代码的 Junit 测试用例示例

转载 作者:行者123 更新时间:2023-12-02 09:05:45 24 4
gpt4 key购买 nike

我已经用java编写了Sax解析器代码。我有两个类,其中一个处理程序类实际上执行解析并扩展 Sax 解析器的默认处理程序类。另一个类是解析器类,它设置 sax 解析器的属性和功能,设置处理程序,设置异常类和解析方法。我想为这个方法编写Junit测试类。任何人都可以帮助我获得关于如何为此编写 Junit 测试用例的资源吗?

我可以分享我的代码,但我想我已经对其进行了解释,所以您是否可以帮助我完成 Junit 测试用例的示例?

最佳答案

考虑测试您的库的合约。基本上,SAX 解析应该允许解析具有各种风格的 XML(由配置管理)。所以测试的模板可以是:


public class ParserTest {

@Test
public void testParse() {
// given:
SaxParser underTest = createParser(); // create with configurations

// when:
actualResult = underTest.parseXml(<XML_FILE_GOES_HERE>);

// then:
assertThat(actualResult, matchesContent());
}
}

您可以准备一系列这样的测试,以涵盖 sax 解析器应处理的各种情况(分层标签、属性等)。

您可以将 2 个类(解析器和配置)视为一个组件,并编写一个涵盖它们的单元测试。因此,在这种情况下不需要mockito(您已在问题的标签中指定)。

此外,您可以将配置视为单独的组件,并检查它是否生成正确的配置,再次测试行为契约。

关于XML的断言。您可能会发现有用xml unit library

关于java - Sax 解析代码的 Junit 测试用例示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59828136/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com