TestNG支持對Junit4測試代碼的自動重構(@test tag)
其中對于數(shù)組比較,
Junit: assertEquals("msg", expected, actual);
TestNG: AssertJUnit.assertEquals("msg", expected, actual);
似乎這是一個delegate的處理方式。不過執(zhí)行的時候報錯:
java.lang.AssertionError: correct tokens expected:<[Ljava.lang.String;@941db6> but was:<[Ljava.lang.String;@2acc57>
at org.testng.AssertJUnit.fail(AssertJUnit.java:59)
at org.testng.AssertJUnit.failNotEquals(AssertJUnit.java:364)
at org.testng.AssertJUnit.assertEquals(AssertJUnit.java:80)...
Baidu上一無所獲,于是google. 確認這是一個存在的bug。如下的link討論的是int[]的情況。估計string[]的情況類似。
http://code.google.com/p/testng/issues/detail?id=4
暫時的處理方法:繼續(xù)用junit的assert方法。但是用testNG來識別@test標記。
//import org.testng.AssertJUnit;
import static org.junit.Assert.*;