FreeMindからテストケースを自動生成するテストツールFMPictをリリース

最近、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、FreemindPython(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で描きます。

f:id:goyoki:20180204230440p:plain

そして以下のコマンドを実行します。

fmpict FreeMindファイルのファイルパス

すると2ワイズカバレッジ100%網羅のテストケースが出力されます。

ライス  味      ほうれんそう    スープ  味玉    麺      チャーシュー
なし    普通    あり    こってり        なし    ふつう  なし
中      普通    なし    ふつう  あり    硬め    あり
小      こいめ  あり    ふつう  なし    硬め    なし
小      薄め    なし    こってり        あり    ふつう  あり
なし    薄め    なし    ふつう  あり    硬め    なし
なし    こいめ  あり    ふつう  あり    ふつう  あり
小      普通    なし    こってり        なし    硬め    あり
中      薄め    あり    こってり        なし    ふつう  なし
中      こいめ  なし    こってり        あり    ふつう  あり

テストケースの生成では、色々な網羅基準を選択可能です。詳しい手順を以下に記載しました。

https://github.com/hiro-iseri/fmpict/blob/master/doc/howto_select_coverage_criteria.md