gpt4 book ai didi

java - 用于读取 JSON 文件的 JUnit 测试

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:07:07 25 4
gpt4 key购买 nike

假设我想为一个 Java 类编写一个测试,该类将提供一种读取和解析外部文件的方法(准确地说,文件是 JSON,我将使用 Jackson)。

此外,我有一些我要解析的 JSON 文件的示例,而且我也模糊地知道这个 SomeMagicalReader.readPony("path/to/location/pony.json") 方法应该返回;如果我设法让 readPony 返回某种 PonyObject,我想知道如何测试生成的 PonyObject 是我想要的预计。

我的问题是为 readPony 函数提供测试数据。我可能对这种方式考虑得太多了,但是 (1) 是否有一种惯用的“Java + Junit”方式来做到这一点? (= 测试读取外部文件的方法?)将示例文件的内容复制粘贴为测试代码中的字符串变量? (它们相当短,但仍然很快就会变得丑陋。)将示例 JSON 放在...某处 并使用路径调用 readPony? (这听起来更明智。)(2)如果我的测试以 Maven 样式测试包层次结构组织,那么放置此类外部 JSON 测试文件的规范位置是什么,例如src/test/java/com/stuff/app/package/SomeMagicalReaderTest.java?

最佳答案

根据专家的 standard directory layout ,我建议您将 JSON 测试文件放在 src/test/resources 中,因为它们 测试资源。请注意,您可以(并且应该)在资源文件夹下组织自己的文件夹层次结构(其他开发人员会发现在修复或添加一些其他测试时更容易找到特定的测试资源)。

所以是的,如果您自己的测试资源层次结构足够好(例如,如果您认为您的包结构用有意义的包名称组织得很好,在你的测试资源层次结构中遵循它根本不是一个坏主意)。

关于java - 用于读取 JSON 文件的 JUnit 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25273610/

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