gpt4 book ai didi

unit-testing - 我应该使用真实数据还是样本数据进行单元测试?

转载 作者:行者123 更新时间:2023-12-03 14:39:42 25 4
gpt4 key购买 nike

我正在为遗留应用程序的输出编写一个解析器,由于没有关于文件语法的规范,我尽可能多地获取了这些文件的样本。

现在我在实现解析器之前编写单元测试(因为没有其他理智的方法来做到这一点)但我不确定我是否应该:

  • 使用应用程序生成的真实文件,从中读取并将输出与我将在另一个文件中以 json 格式存储的输出进行比较。
  • 或者创建一个包含我想要测试的 token 和可能性的示例字符串以及一个具有预期输出的 dict(这是 python)。

  • 我倾向于使用第二种选择,因为我只会测试我需要的东西,而没有包含在实际文件中的所有“真实世界”数据,但恐怕我会忘记测试一种或另一种可能性。

    你怎么认为?

    最佳答案

    我的建议是两者都做。编写一组集成测试,通过预期输出运行所有文件,然后使用预期输入进行单元测试以隔离解析逻辑。

    我建议先编写集成测试,这样你就可以在外部编写解析器,看到一堆失败的测试可能会贬低,但它会帮助你更早地隔离边缘情况。

    顺便说一句,我认为这是一个很好的问题。我最近遇到了类似的问题,即将大型 xml 提要从上游系统转换为专有格式。我的解决方案是为完整提要编写一组集成黑盒测试,测试记录计数和其他高级成功指标等内容,然后将输入分解成越来越小的块,直到我能够测试数据的所有排列。直到那时我才对如何构建解析器有了很好的了解。

    关于unit-testing - 我应该使用真实数据还是样本数据进行单元测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4317747/

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