PHPも単体テストの波が来るか

http://d.hatena.ne.jp/tenkoma/20090503/1241303816

NetBeans 6.7は地味ながらもテストやデバッグ関係の強化が目立つ。

スクリプト系は型が弱いぶん凡ミスが非常に多くなりがちなのでこういうサポートはうれしいでしょう。


ただ、あんまりやる気になって無いですね。Junitと比べるとサポートの弱さが目立ちます。



例えば上のエントリのような足し算するコードをJavaで書いてみるとこんな感じになります。

public class Calc {

    public int add(int a,int b){
        return a + b;
    }

}

そこでCTRL+SHIFT+Uを押します。どういったコードにするかというウインドウが現れて、先に進むとJUnitの雛形が出来上がっています。

public class CalcTest {

    public CalcTest() {
    }

    @BeforeClass
    public static void setUpClass() throws Exception {
    }

    @AfterClass
    public static void tearDownClass() throws Exception {
    }

    @Before
    public void setUp() {
    }

    @After
    public void tearDown() {
    }

    /**
     * Test of add method, of class Calc.
     */
    @Test
    public void testAdd() {
        System.out.println("add");
        int a = 0;
        int b = 0;
        Calc instance = new Calc();
        int expResult = 0;
        int result = instance.add(a, b);
        assertEquals(expResult, result);
        // TODO review the generated test code and remove the default call to fail.
        fail("The test case is a prototype.");
    }

}

どこをいじればいいのかだいたいわかりますよね。Junitの資料をみなくともすぐにテストさせることが出来るのはNetBeansの親切さといった特徴でしょうか。

この実装はつい最近できたわけではありません。結構前からこんなコードをはいてくれます。つまりそんな昔からあるNetBeansJavaにすら追いついていないのは手抜きにしか思えません。