首頁  >  文章  >  Java  >  比較兩個不同版本的assertEquals()

比較兩個不同版本的assertEquals()

黄舟
黄舟原創
2016-12-28 11:51:421777瀏覽

比較兩個不同版本的assertEquals()


分別看一下JUnit和TestNG對assertEquals()的定義:

 

JUnit:

ee

 

忽略各參數的類型不考慮,重新看 actual, expected, message 這三個參數的前後順序:

 

JUnit中的順序是:(message), expected, actual。

 

TestNG中的順序是:actual, expected, (message)。

 

這其中的細微差別是,actual(實際值)與expected(期望值)的前後順序,當message(訊息文字)存在時它與另外兩個參數的相對位置。在JUnit中,message(如果它存在的話)處於優先位置,其次是expected,再次是actual;而在TestNG中,恰恰是完全相反,actual處於優先位置,其次是expected,再次是message。

 

相比較而言,我認為TestNG對assertEquals()的定義比較符合人的思考邏輯,也就是所謂的「使用者友善性」另強一些。當然這只是個人觀點,見仁見智嘛。

 

當初我第一次看到JUnit中assertEquals()的定義時,就在想,為什麼不是actual在前而expected在後?今天第一次看到TestNG對assertEquals()的定義,突然有種「英雄所見略同」的感覺。當然現在提這一出有些「馬後砲」的味道。

 

就憑這一點,我為TestNG叫好!

 以上就是比較兩個不同版本的assertEquals()的內容,更多相關內容請關注PHP中文網(www.php.cn)!


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn