2016-03-15 74 views
-1

我需要在Java中實現一些特殊的多項式的計算(語言並不重要)。這些計算爲具有固定係數的基數多項式的數量的加權和。如何測試特殊多項式的正確實現?

每個基本多項式具有2到10個係數,通常考慮10個基本多項式,總共給出20-50個係數。

基本上計算沒什麼大不了的,但我很擔心輸入錯誤。我只有一個印刷文檔作爲模板。所以我想爲計算實現單元測試。問題是:我如何獲得可靠的測試數據。我確實有另一個應該計算這些函數的軟件,但這個過程很複雜,也容易出錯 - 我必須縮放輸入值,通過軟件中的多個菜單選項產生輸出,然後粘貼到我的測試代碼。

我想有,周圍用外部軟件來生成一些測試數據沒辦法,但也許你有一些建議做這種類型的測試程序更安全的或最小化所需數量的測試用例

我也很擔心提供合適的輸入值:根據自變量的值,某些術語對輸出只有很小的貢獻,而對於其他值則可能占主導地位。

的類型我希望錯誤的(並且需要避免)有:

  • 錯別字係數應用到錯誤的電源
  • 係數(即a_7*x^6代替a_7*x^7 - 只是爲了演示,我沒有計算這種方式,但我使用Horner的方案)
  • 離一個錯誤(即缺少零級或最高階項)

回答

0

既然你有10度多項式,11個不同點的測試應該給出確定性。

但是,如果出現錯誤,已經在一個隨機點x=1.23004給出一個想法(遠離2/3和4/5等小部分)的測試將以高概率顯示差異,因爲錯誤和真正多項式之間的差異不太可能在這個地方有一個根。

相關問題