最近、FMPictというテスト設計自動化ツールを作りました。
https://github.com/hiro-iseri/fmpict
FMPictは、FreeMindのモデルからテストケースを生成するテスト設計自動化ツールです(PICTを制御して実現しています)。nワイズカバレッジ(n:1~3)を100%網羅するテストケースを生成できます。オールペア法ツール、クラシフィケーションツリー法ツールとして利用可能です。
ツールは以下のメリットを持ちます。
- マインドマップでテスト条件をモデリングできます。それにより、テスト条件の抽象構造やグルーピング構造をわかりやすく表現できます。
- ツリーモデルの記法的制約(*)の回避手段として、リンク記法とタグ記法という機能を加えています。これによりツリーの重複をなくしたり、複数のツリーを一つのツリーにまとめて描いたりすることが可能です。
- PICTをマインドマップで操作できます。
環境設定とインストール
環境設定とインストールの手順は以下に記載しています。
https://github.com/hiro-iseri/fmpict/blob/master/doc/howto_setup.md
PICT、Freemind、Python(2.7 or 3。pip必要)が必要です。Win、Macで動作確認しています。
FMPictのインストールは「pip install fmpict」を実行ください。
機能の概要
記法ルールは以下にまとめています。
https://github.com/hiro-iseri/fmpict/blob/master/doc/manual.md
大まかに、プレフィックスかフォルダアイコンでノードの種類を表現します。テスト条件(因子orクラシフィケーション)にはフォルダアイコンか先頭文字「@」を付与します。値(水準orクラス)は何も付けません。
例えば次のようなモデルをFreeMindで描きます。
そして以下のコマンドを実行します。
fmpict FreeMindファイルのファイルパス
すると2ワイズカバレッジ100%網羅のテストケースが出力されます。
ライス 味 ほうれんそう スープ 味玉 麺 チャーシュー なし 普通 あり こってり なし ふつう なし 中 普通 なし ふつう あり 硬め あり 小 こいめ あり ふつう なし 硬め なし 小 薄め なし こってり あり ふつう あり なし 薄め なし ふつう あり 硬め なし なし こいめ あり ふつう あり ふつう あり 小 普通 なし こってり なし 硬め あり 中 薄め あり こってり なし ふつう なし 中 こいめ なし こってり あり ふつう あり
テストケースの生成では、色々な網羅基準を選択可能です。詳しい手順を以下に記載しました。
https://github.com/hiro-iseri/fmpict/blob/master/doc/howto_select_coverage_criteria.md