Java 如何测试特殊多项式的正确实现?
我需要在Java中实现一些特殊多项式的计算(语言不是很重要)。这些都是作为一个固定系数的基础多项式的数量加权和计算 每个基多项式有2到10个系数,通常考虑10个基多项式,总共给出20到50个系数 基本上,计算没什么大不了的,但我担心打字错误。我只有一份打印文件作为模板。所以我想为计算实现单元测试。问题是:如何获得可靠的测试数据。我确实有另一个软件,应该计算这些函数,但过程很复杂,也容易出错-我必须缩放输入值,通过软件中的许多菜单选择来生成输出,然后将其粘贴到我的测试代码中 我想没有办法使用外部软件来生成一些测试数据,但是您可能有一些建议,可以使这种类型的测试过程更安全,或者尽量减少所需的测试用例数量 我还担心提供合适的输入值:根据自变量的值,某些项对输出的贡献很小,而对于其他值,它们可能占主导地位 我预期(需要避免)的错误类型有:Java 如何测试特殊多项式的正确实现?,java,unit-testing,math,testing,Java,Unit Testing,Math,Testing,我需要在Java中实现一些特殊多项式的计算(语言不是很重要)。这些都是作为一个固定系数的基础多项式的数量加权和计算 每个基多项式有2到10个系数,通常考虑10个基多项式,总共给出20到50个系数 基本上,计算没什么大不了的,但我担心打字错误。我只有一份打印文件作为模板。所以我想为计算实现单元测试。问题是:如何获得可靠的测试数据。我确实有另一个软件,应该计算这些函数,但过程很复杂,也容易出错-我必须缩放输入值,通过软件中的许多菜单选择来生成输出,然后将其粘贴到我的测试代码中 我想没有办法使用外部软
- 系数输入错误
- 应用于错误功率的系数(即
而不是a_7*x^6
——仅用于演示,我不是用这种方法计算,而是使用霍纳方案)a_7*x^7
- 逐个错误(即缺少零阶或最高阶项)
x=1.23004
以给出一个想法(远离像2/3、4/5这样的小分数),如果出现错误,很可能会显示出差异,因为错误多项式和真实多项式之间的差异不太可能在这个地方有根