gpt4 book ai didi

java - 在您事先不知道输出的情况下测试代码

转载 作者:行者123 更新时间:2023-12-01 08:12:55 26 4
gpt4 key购买 nike

我当前的项目相当复杂,需要进行大量数学运算,我事先并不知道结果。我正在尝试编写单元测试(在 JUint 中);我目前已经编写了一些测试,然后我手动查看结果,看看它们是否“看起来”正确,但由于我的程序是我确定复杂数学结果的方式,所以我不非常确定我如何验证准确性。

我还有其他单元测试来测试非常小的代码片段,但我不确定如何为更大的代码块编写测试。有人有什么想法和指导吗?

更多信息,这不是一个数字。它更像是:“输入:100,000行csv数据”输出“100,000个csv分析”。但这些行相互依赖,在 10 行 csv 数据上运行代码不足以进行有意义的数学计算。

最佳答案

做数学需要你成为一名数学家,即使你是一个非常糟糕的数学家。没有办法解决这个问题。考虑到这一点,数学家使用以下一些方法来检查他们的答案:

  • 从答案中得出输入,迫使您逆向思考。
  • 使用不同的方法得到相同的答案。
  • 将问题分解为更小、更容易验证的步骤。
  • 尝试在现实世界中使用结果,并观察是否会发生不好的事情。

如果您大约知道您的程序应该输出什么答案,那么您可以检查您的程序是否给出接近正确的答案,然后希望它是正确的并将其用于单元测试。但根据我的经验(游戏开发),真正的、核心的数学是检查自己的最可靠的方法。此外,您还拥有世界上最先进的计算器之一。 :)

附注不要忘记在单元测试中留下一些差异。特别是在进行更高级的数学计算时,有多种正确的计算方法,但由于浮点运算而给出的答案略有不同。

关于java - 在您事先不知道输出的情况下测试代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15912650/

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