- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我目前正在使用现有的 Perlin 噪声实现,它与我试图清理的一堆代码捆绑在一起。有问题的代码测试严重不足,我想确保它的每个组件都接受适当的测试,以防出现任何隐藏的错误。
但是,我不确定在这种情况下我将如何测试 Perlin 噪声实现的正确性。我欢迎所有建议。
最佳答案
这是一个棘手的问题,可能没有单一的最佳解决方案。
对于某些图像属性,您可以使用 Computer Vision 执行自动化测试技巧。 IE。如果您的 Perlin 噪声输出应该是可平铺的,则边缘检测过滤器可能能够发现问题。当我为基于柏林噪声的木纹纹理开发图像分类器时,我使用 FFT 滤波器也取得了一些不错的结果。根据我的经验,实现此类测试很容易花费比构建被测代码更多的时间。为了尽量减少这种情况,我会坚持使用像 OpenCV 这样的库, Octave等。此外,这种方法依赖于已知的良好输出以构建测试。
从某种角度来看,柏林噪声是一种随机数发生器。为此,您可以使用 RNG test suites喜欢 NIST Statistical Test Suite或 Diehard tests .这种方法依赖于已知的良好输出来构建测试。
最后,您可以构建将结果输出到文件的测试,然后根据预期结果对每个测试进行手动确认。为方便起见,您可以通过网页加载图像集合,甚至可以集成报告复选框以收集来自测试仪的通过/未通过响应。这个解决方案是我为测试难以量化、不可能或不切实际的属性而提出的最佳解决方案。 IE。我只知道我的粒子效果是正确的。
关于testing - 如何为 Perlin 噪声库编写单元测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32023240/
我是一名优秀的程序员,十分优秀!