Python.use(better) テストケースを実行するコード
Python.use(better)
テストケースを実行するコード《Jython2.5.0》
《著》小粒ちゃん+∞《監修》小泉ひよ子とタマゴ倶楽部
第0版♪2001/03/02 ● 第1版♪2003/05/25 ● 第2版♪2004/06/01 ● 第3版♪2009/02/28
♪スタッフ研修用のセミナー教材(2003)に加筆(再構成)して、公式マニュアルの補足情報を提供します。
■ 関連記事
25.2. doctest — Test interactive Python examples ★★
ドキュメンテーション文字列の中に、対話モードでの入出力例を記述するだけで、そのモジュールが正しく動作することを検証できます。
#! /usr/bin/env python """ >>> # -------------------- ex_1 >>> "ABC".find('A') 0 >>> "ABC".find('B') 1 >>> "ABC".find('C') 2 >>> "ABC".find('@') -1 >>> # -------------------- ex_2 >>> "ABC".index('A') 0 >>> "ABC".index('B') 1 >>> "ABC".index('C') 2 >>> "ABC".index('@') Traceback (most recent call last): File "", line 1, in ValueError: substring not found in string.index >>> None version: #1.0.0 """ ## ---------------------------------------- from doctest import testmod if __name__=='__main__': testmod(name=__file__)
これを実行すると、
$ jython2.5.0 Testmod.py $
すべてのテストケースに問題がなければ、何も出力されません。しかし、テストケースを実行したか不安になるので、最後にエラーケースを1つだけ記述しておくと、
$ jython2.5.0 Testmod.py *********************************************************************** File "Testmod.py", line 31, in Testmod.py Failed example: None Expected: version: #1.0.0 Got nothing *********************************************************************** 1 items had failures: 1 of 9 in Testmod.py ***Test Failed*** 1 failures. $
このようなレポートが出力されます。この最後のエラーケースで、テストケースのバージョンを確認できるので便利です。
■ 何が問題か
しかし、手作業でテストケースを入力するのは面倒です。そこで「テストケースを生成するコード」を記述する方法を紹介します。
TO BE CONTINUED...
》作業中です《
Last updated♪2009/07/24