TESTLINK エクセル変換マクロでデシジョンテーブルを取り込む。

2009年7月27日現在最新のバージョンはv44a_TestLinkCnvMacro.xlsでここから落とせる。
さて、テスト仕様書でデシジョンテーブル形式を取っている会社は意外に多いのではないかと思う。
確かに、テストパターンのチェックやケースの漏れがないかなどを判斷するには、TESTLINKに冗長的にテストケースをシナリオベースで書くよりは優れていると思う。
既存のデシジョンテーブルのサンプルはこんな感じになっていて、該当するシートでCTR+F8でMAKEXMLを実行すればTESTLINKにインポートするXMLファイルがまたたくまにできてしまう。
[ここでCTR+F8のMAKEXMLを実行]

[TESTLINKからできたXMLファイルを任意のスィーツの下へ展開する。]

まあ、こんな感じなのですが・・・ちょっと現状のテストに合わせたデシジョンテーブル(DT)にしてみる。
こんな感じ・・・

ついでに作成者からテストケースIDの項目を追加して、以下のようにエクセル内のパラメータも変更しておく。

[TESTLINKからできたXMLファイルを任意のスィーツの下へ展開する。]

おお、エラーが・・・どうやら、suiteTAG (suite_DT)の試験手順、期待結果データに項目名を付加する:がTRUEになっているので作成者:という文字列がついた形で
DB検索するので、エラーとなっているようだ。



そこでマクロを修正して、期待結果データに項目名を付加する:がTRUEになっていても、作成者や試験担当者の項目であれば項目名を付加しないようにマクロを以下のように改造する。

マクロの469行目附近を以下のように修正。

' データに項目名を付加する場合
If (AddItemFlag = True) Then
	'2009-07-27 ADD R.Funaki Start For DT
	If (0 <> StrComp(TagName, C_AuthorTagName) _
	And 0 <> StrComp(TagName, C_TesterTagName)) Then
	'2009-07-27 ADD R.Funaki End For DT
		' データに付加する「項目名」を先頭データ行番の一つ上の見出しより取得する
		Item = .Range("A1").Offset(C_TopLine - 2, Col - 1).Text
		' データに項目名を付加する
		cellText = Item & ":" & cellText
	End If     'R.Funaki 2009-07-27 Start/End For DT
End If

おお、こんどはうまくいきました。

(注)ただしデシジョンテーブルに関してはインポートはできますが、エキスポートはできません(エキスポートしても元の形にならない)ので注意してください。