作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我当前的项目相当复杂,需要进行大量数学运算,我事先并不知道结果。我正在尝试编写单元测试(在 JUint 中);我目前已经编写了一些测试,然后我手动查看结果,看看它们是否“看起来”正确,但由于我的程序是我确定复杂数学结果的方式,所以我不非常确定我如何验证准确性。
我还有其他单元测试来测试非常小的代码片段,但我不确定如何为更大的代码块编写测试。有人有什么想法和指导吗?
更多信息,这不是一个数字。它更像是:“输入:100,000行csv数据”输出“100,000个csv分析”。但这些行相互依赖,在 10 行 csv 数据上运行代码不足以进行有意义的数学计算。
最佳答案
做数学需要你成为一名数学家,即使你是一个非常糟糕的数学家。没有办法解决这个问题。考虑到这一点,数学家使用以下一些方法来检查他们的答案:
如果您大约知道您的程序应该输出什么答案,那么您可以检查您的程序是否给出接近正确的答案,然后希望它是正确的并将其用于单元测试。但根据我的经验(游戏开发),真正的、核心的数学是检查自己的最可靠的方法。此外,您还拥有世界上最先进的计算器之一。 :)
附注不要忘记在单元测试中留下一些差异。特别是在进行更高级的数学计算时,有多种正确的计算方法,但由于浮点运算而给出的答案略有不同。
关于java - 在您事先不知道输出的情况下测试代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15912650/
嘿,我有一个任意的 SQL 查询。从这个查询开始,我想知道这个查询将访问或更改哪些表。可能定义了一些函数或触发器,这些函数或触发器还会更改查询中声明的表之外的其他表。 我考虑过创建一个不同的 mysq
我是一名优秀的程序员,十分优秀!