オレオレJUnit フレームワーク
JUnitでオレオレフレームワーク(というほどのものじゃないが)を書きました。
こうしておくとちょっとだけ楽になります。
public class MyTestFrame extends TestCase{ private long start; private long end; protected static int count = 0; @Override public void setUp(){ System.out.println(); start = System.currentTimeMillis(); } @Override public void tearDown(){ end = System.currentTimeMillis(); System.out.println(getMethodName(count++)+": "+(end-start)+"ms."); } private static String methodNames[] = null; private String getMethodName(int num){ if(methodNames == null || methodNames.length == 0){ List<String> tmpNames = new ArrayList<String>(); Method ms[] = this.getClass().getMethods(); String mn = null; for(Method m : ms){ mn = m.getName(); if(mn.startsWith("test")) tmpNames.add(mn); } methodNames = new String[tmpNames.size()]; methodNames = tmpNames.toArray(methodNames); } return methodNames.length <= num ? "null" : methodNames[num]; } }
こんな感じで標準出力されるのでコマンドベースで実行したりする場合などには役に立ちます。
.
testSimple: 769ms.
.
testBuffered: 206ms.
.
testStream: 307ms.
.
testBufferedStream: 236ms.
.
testApacheIO: 282ms.