日本における組み合わせテスト
~ 歴史、適用状況、技法、ツール ~
辰巳 敬三
富士通 / ASTER
July 16, 2013
2017年8月に日本語に翻訳
1 (c) K. Tatsumi 2013
“Workshop on Combinatorial Testing for Complex Computer Systems”
In conjunction with ICECCS 2013
July 16, 2013, Singapore
目次
 組み合わせテスト技法の歴史の通説
 実際の歴史
 前史
 富士通のメインフレームコンピュータの初期の歴史
 富士通におけるテスト項目設計の手順
 組み合わせテスト技法の誕生
 実験計画法の適用
 テスト項目設計支援システム
 米国への組み合わせテスト技法の移転
 組み合わせテスト技法の系譜
 日本の組み合わせテストの状況
 HAYST法
 PictMaster
 まとめ
2 (c) K. Tatsumi 2013
組み合わせテスト技法の歴史の通説
3 (c) K. Tatsumi 2013
Mandlの論文が
最初 ??
Jacek Czerwonka, Pairwise Testing
Combinatorial Test Case Generation
http://www.pairwise.org/
実際の歴史
(1957: デシジョンテーブル)
~1967: 同値分割、限界値分析
1970: 原因結果グラフ
[Elmendorf]
(1989~)1992: OATS
[Brownlie, Prowse, Phadke]
(1990~)1994: CATS
[Sherwood]
(1992~)1994: AETG
[Cohen, et. al]
AT&T, Bellcore
1980 1990 2000 20101950 1960 1970 ‘85 ‘95 ‘05
組み合わせ手法
1984: 直交配列表 / 組み合わせ表
[佐藤, 下川]
2000: CTE XL
[Daimler Chrysler]
1987: Test Case Design Support
System [Tatsumi]
1985: Orthogonal Latin Squares
[R. Mandl]
1988: Category-partition method
[Ostrand, Balcer]
(1976: テスト要因分析手法)
[富士通]
入力条件分析手法
1993: Classification-tree method
[Grochtmann, Grimm]
2007: FireEye 2009:ACTS
(IPOG) [Lei, Kuhn]
(2000~)2004: PICT
[Microsoft]
富士通
<テスト技法>
4 (c) K. Tatsumi 2013
(*1) 佐藤忍, 下川浩樹, 実験計画法を用いたソフトウェアのテスト項目設定法, 第4回SPCシンポジウム発表報文集, pp.1-8, 日科技連, 1984
(*1)
(c) K. Tatsumi 20135
前史
 富士通のメインフレームコンピュータの初期の歴史
M. A. Cusumano, "Japan's Software Factories: A Challenge to U.S. Management," Oxford University Press, 1991
K. Tatsumi, The History of Software Engineering and Software Testing - World and Japan -
http://a-lifelong-tester.cocolog-nifty.com/Chronology/ChronologyEng.html
‘65 1970 1980 ‘85‘75 1990‘55 1960
FACOM
100
FACOM
128A
FACOM
222
FACOM
230series
FACOM
230-60
Amdahl
470V/6
FACOM
M-190
FACOM
M-200
FACOM
M-380
FACOM
M-780
FUJITSU
M-1800
1954
1958
1961
1964
1968
1975
1978
1976
1981
1985
1990
FACOM
128B
1956
リレー トランジスタ IC (集積回路)
FACOM
230-75
1970
1973
FACOM
230-8series
LSI
ALGOL
compiler
FORTRAN
compiler
Data
communications
MCP II
(for 230-20/30)
1960
1963
1965
MONITOR V
(large-scale)
1968
TSS
PL/I
compiler
BOS
(mid-scale)
1971
1969
COBOL
compiler
DB/DC
BOS/VS
OSII/VS
1974
MONITOR
VI/VII
1975
OSIV/F4
(M-series OS)
1977
1982
OSIV/F4 MSP
1981
OSIV/F2 ESP
1983
OSIV/X8 FSP
OSIV/F2
OSIV/X8
RDB
AIM
(Online DB)
オペレーティング・システム
ネットワーク, DB/DC
コンパイラ
1966
MONITOR II
(for 230-50)
OSII
1989
OSIV/MSP
(MSP-EX)
1990
OSIV/FSP
1966
プログラム開発部門の創設
1968
プログラム試験課の設置
1974
ソフトウェア事業部門の設立
(c) K. Tatsumi 20136
前史
 富士通におけるテストケース設計の手順
(1970年代初めより)
Step1. テスト分類
• テスト対象の機能を小さく分割する
Step2. テスト要因分析
• 外部仕様書から、入力条件と動作環境条
件(因子)、それらが取りうる値(状態)を抽出
する
Step3. テストケース作成
• 因子と状態を組み合わせてテストケースを
作成する
Step4. テスト結果の定義
• 各テストケースの期待結果を定義する
fooコマンド [機能]
[入力形式]
・・・・・
1. ・・・
2. ・・・
<外部仕様書>
<テスト要因分析表>
A B C D
1 a1 b1 c1 d1
2 a2 b2 c2 d2
3 a3 c3 d3
4 c4
状態
因子
<テストケース表>
因子 A B C D
テストケース1 a1 b1 c1 d1
テストケース2 a2 b2 c3 d2
テストケースn a3 b1 c4 d3
(c) K. Tatsumi 20137
組み合わせテスト技法の誕生
 実験計画法の適用
原因結果グラフと同様の制約条件
- 排他
- 包含
- 一つのみ
辰巳のCOMPSAC‘87 発表スライドより
(1983-1984)
(c) K. Tatsumi 20138
組み合わせテスト技法の誕生
 テストケース設計支援システム
(1986-1987)
 テスト設計プロセスの支援
• テスト分類からテストケース作
成のフェーズまでを支援
• テスト仕様書の管理や改訂の
支援
 支援機能の改良
• テストケース生成アルゴリズム
• 制約条件の処理
– 状態-状態間, 因子-状態間,
因子-因子間
» 排他的組み合わせ
» 組み合わせなし
» 必要な組み合わせ
» 状態のグルーピング
辰巳のCOMPSAC‘87 発表スライドより
(c) K. Tatsumi 20139
米国への組み合わせテスト技法の移転
 英語論文の発表
 T. Yoshida, “Attaining Higher Quality in Software
Development - Evaluation in Practice”, FSTJ, 1985
 K. Tatsumi, "Conceptual Support for Test Case Design",
COMPSAC'87
 K. Tatsumi, "Test Case Design Support System",
ICQC'87
T. Yoshida, "Attaining Higher Quality in Software Development - Evaluation in Practice -", Fujitsu Scientific and Technical Journal, Vol.21, pp.305-316, 1985
吉田 征, 技術の伝承と移転-芸術と技術と人間との接点からの発想, pp.113-114, 日科技連出版, 1994
 米国AT&T社への紹介(1989年)
(吉田氏の著書より)
 吉田は富士通のジャーナル(FSTJ)に掲載された論文を読んだAT&T社の人か
ら、実験計画法(DoE)の適用方法を教えて欲しいと依頼を受けていた
 日科技連の第1次ソフトウェア製品品質管理調査団の一員として海外視察に
参加した際、視察途中の1989年4月30日にニュージャージー州Somersetの
Marriottホテルで吉田らはAT&T社の技術者達とのミーティングをもち説明した
 この時、説明資料の一つとして辰巳がICQC'87で発表した論文のコピーが提
供された
組み合わせテスト技法の系譜
10 (c) K. Tatsumi 2013
1920-1930 実験計画法(DoE) (Fisher)
1940 直交表 (Rao)
品質工学 (田口)
u
<企業> 品質工学フォーラム(学会)設立
品質工学誌に「ソフトウェア開発のためのロバスト・テスティング法」を寄稿 (Phadke)
ソフトウェアテストへの適用(田口)
ソフトウェアテストへの適用事例
(エプソン、ミノルタ、松下電工)
米国で直交表を HAYST法開発開始 HAYST法発表 入門書籍出版 ツール外販開始
ソフトウェアテストに適用
ソフトウェアテストに
実験計画法を適用 Test Case Design Support System (辰巳)
富士通英文ジャーナル(FSTJ)誌に論文掲載
PictMaster (岩通ソフト)
適用事例 (NEC, IBM Japan)
<アカデミア>
組み合わせ論理 遺伝アルゴリズム(GA)適用 CIT-BACH
u u "Taguchi methods"と命名される
品質工学の紹介
(Xerox, Bell研) u
富士通からAT&Tに技術紹介
OATS (Brownlie, Phadke et.al.)
CATS (Sherwood)
AETG (Cohen et.al.)
Adaコンパイラのテストに
DoEのラテン方格適用 (Mandl) PICT(Microsoft) ACTS(NIST)
1995 2000 2005 20101985 19901950 1960 1970 1980
品質工学
コミュニティ
ソフトウェア
品質/テスト
コミュニティ
日本
米国
[富士ゼロックス]
[富士通]
[AT&T]
[大阪大学]
計算論的アプローチ
代数的アプローチ (OA, CA)
[Bellcore]
日本の組み合わせテストの状況
 ソフトウェアテスト技術者のコミュニティ
 ASTER: Association of Software Test EngineeRing
• 特定非営利活動法人 ソフトウェアテスト技術振興協会
• ソフトウェアテスト専門技術者のボランティアによる組織運営
• 活動
– シンポジウム開催 - JaSST: Japan Symposium on Software Testing
– 資格認定試験 - JSTQB: Japan Software Testing Qualifications
Board, ISTQB会員
– 海外連携 - ASTA (アジア連携) / ISO-IEC (国際標準規格)
– 教育研修 – セミナー開催 / 教材公開 / 大学カリキュラム /
Test.SSF (スキル標準)
– 研究 – テストアーキテクチャ、バグ分析などの研究活動
(1/2)
11 (c) K. Tatsumi 2013
日本の組み合わせテストの状況
 組み合わせテストに関する論文や発表件数の推移
1984-’90: 9件, ’91-’95: 0件, ’96-’00: 6件, ’01-’05: 9件, ’06- : 31件
 組み合わせテストの実務への適用状況
(日本の主要IT企業5社のテスト技術者への聴き取り調査より)
 5社とも組み合わせテスト技法は導入済み
 使用ツール
• PICT, PictMaster, ACTS, HAYST, 自社製ツール
 課題
• 組み合わせ以前のテスト設計フェーズが重要
• 組み合わせテスト技法と他の同様のテスト技法の選択基準
 著名なツール
 HAYST法
 PictMaster
(2/2)
12 (c) K. Tatsumi 2013
HAYST 法
 概要
 直交表に基づくテスト技法
 富士ゼロックス社が2000年に開発
 ソフトウェアテストHAYST法入門を2007年に出版
 テストケース設計手法
 “FV表”を用いてテスト分析結果を整理
 “ラルフチャート” でテスト対象機能をモデル化
 “FL表” に因子・水準を抽出して整理
13 (c) K. Tatsumi 2013
(1/4)
<FV表> <FL表><ラルフチャート>
No. 目的機能 検証内容 テスト技法 No. 因子名 水準1 水準2 … 水準N
HAYST 法
 HAYST法ツール “MatrixTester”
 テンプレート(強度2, L4 - L256)から多水準直交表に変形
 禁則回避(制約条件)の処理
 部分組合せ保証(3, 4, 5 因子間)
 組合せ網羅率の算出
 適用状況
 MatrixTester
• 自社(560 ライセンス)及び社外(23 社, 160 ライセンス)で使用
– 製造業(自動車, 医療), 金融業, 流通業, 家電, 通信・放送機器, 化学 など
 入門書籍販売数
• 4000 部
14 (c) K. Tatsumi 2013
(2/4)
K. Akiyama et al., "Development and Evaluation of HAYST Method Tool," in Proc. SoMeT, 2010, pp.398-414.
http://www.hayst.com/Documents/HAYST-MethodTool.pdf (slides) http://www.hayst.com/Documents/20101001-SoMeT.pdf
HAYST 法
 MatrixTester : 入力 (因子, 水準, 禁則情報)
15 (c) K. Tatsumi 2013
(3/4)
Input type Explanation
Factor (Parameter) Name of parameter to be combined
Level (Value) List of values existing in parameter
Importance of factor Factors are grouped and it is possible to specify strength for group
Importance of level Importance of level (Weighting)
Constraint information Constraint condition in combination between levels
Assignment method Normal assignment, Partial combination assurance, rating assurance,
Level consolidation, Room technique, Strength 3, PICT calling
Detection bug
information
Type of bug
Specific factor Value generation type, Fixed value, Sequence number
Form style Form style at the time of Excel output
Auto execution support
information
Windows Dialog GUI information for auto execution
[禁則情報]
(Source: Koichi Akiyama, Fuji Xerox)
HAYST 法
 MatrixTester : 出力 (テストマトリクス)
16 (c) K. Tatsumi 2013
(4/4)
Type of output Explanation
Test matrix Result of assignment to orthogonal array
Test script Orthogonal array is output to Excel in script format in each line
Appearance status Appearance frequency and combination that does not appear
Rating Rating of combination between 2 factors and 3 factors
Round Robin table Round Robin table indicating appearance status of level combination
between 2 factors and 3 factors
Constraint graph Graph indicating hierarchical status of constraint and that data table
Test analysis result Result of analysis of existence position of bug based on the test result
(Source: Koichi Akiyama, Fuji Xerox)
PictMaster
 概要
 Excel ベースのGUIをもつペアワイズテストツール
 テストケース生成エンジンとして PICT を利用
 2008年に岩通ソフトの鶴巻氏が開発
 適用状況
 2008年公開以降, 累積ダウンロード数は20,000回以上
 岩通社内のビジネスホンシステムのシステムテスト
 車載OSのテスト
 大規模パッケージソフトウエア
 ダウンロード
http://en.sourceforge.jp/projects/pictmaster/releases/
17 (c) K. Tatsumi 2013
(1/2)
Mr. Tsurumaki can be contacted at LinkedIn "Combinatorial and Pairwise Testing" group.
http://www.linkedin.com/groups/Combinatorial-Pairwise-Testing-4243185
PictMaster
 主な機能
 GUI サポート
 制約表 (PICTの制約条件に変換)
 テスト期待結果表
18 (c) K. Tatsumi 2013
(2/2)
(Source: Toshiro Tsurumaki, IWATSU SYSTEM & SOFTWARE)
まとめ
 組み合わせテスト技法の開発の歴史からの学び
テスト技術の進化のためには以下が必要
 オープン性と協業(コラボレーション)
 ツールと方法論
 日本における課題
 テストプロセスの上流の強化
• テストアーキテクチャ設計, 入力モデリング
 多数のテスト技法から適切な技法を選択するための指針
• どのようなタイプのソフトウェアに組み合わせテスト技法を適用する
とよいのか?
19 (c) K. Tatsumi 2013

日本における組み合わせテスト - 歴史、適用状況、技法、ツール -

  • 1.
    日本における組み合わせテスト ~ 歴史、適用状況、技法、ツール ~ 辰巳敬三 富士通 / ASTER July 16, 2013 2017年8月に日本語に翻訳 1 (c) K. Tatsumi 2013 “Workshop on Combinatorial Testing for Complex Computer Systems” In conjunction with ICECCS 2013 July 16, 2013, Singapore
  • 2.
    目次  組み合わせテスト技法の歴史の通説  実際の歴史 前史  富士通のメインフレームコンピュータの初期の歴史  富士通におけるテスト項目設計の手順  組み合わせテスト技法の誕生  実験計画法の適用  テスト項目設計支援システム  米国への組み合わせテスト技法の移転  組み合わせテスト技法の系譜  日本の組み合わせテストの状況  HAYST法  PictMaster  まとめ 2 (c) K. Tatsumi 2013
  • 3.
    組み合わせテスト技法の歴史の通説 3 (c) K.Tatsumi 2013 Mandlの論文が 最初 ?? Jacek Czerwonka, Pairwise Testing Combinatorial Test Case Generation http://www.pairwise.org/
  • 4.
    実際の歴史 (1957: デシジョンテーブル) ~1967: 同値分割、限界値分析 1970:原因結果グラフ [Elmendorf] (1989~)1992: OATS [Brownlie, Prowse, Phadke] (1990~)1994: CATS [Sherwood] (1992~)1994: AETG [Cohen, et. al] AT&T, Bellcore 1980 1990 2000 20101950 1960 1970 ‘85 ‘95 ‘05 組み合わせ手法 1984: 直交配列表 / 組み合わせ表 [佐藤, 下川] 2000: CTE XL [Daimler Chrysler] 1987: Test Case Design Support System [Tatsumi] 1985: Orthogonal Latin Squares [R. Mandl] 1988: Category-partition method [Ostrand, Balcer] (1976: テスト要因分析手法) [富士通] 入力条件分析手法 1993: Classification-tree method [Grochtmann, Grimm] 2007: FireEye 2009:ACTS (IPOG) [Lei, Kuhn] (2000~)2004: PICT [Microsoft] 富士通 <テスト技法> 4 (c) K. Tatsumi 2013 (*1) 佐藤忍, 下川浩樹, 実験計画法を用いたソフトウェアのテスト項目設定法, 第4回SPCシンポジウム発表報文集, pp.1-8, 日科技連, 1984 (*1)
  • 5.
    (c) K. Tatsumi20135 前史  富士通のメインフレームコンピュータの初期の歴史 M. A. Cusumano, "Japan's Software Factories: A Challenge to U.S. Management," Oxford University Press, 1991 K. Tatsumi, The History of Software Engineering and Software Testing - World and Japan - http://a-lifelong-tester.cocolog-nifty.com/Chronology/ChronologyEng.html ‘65 1970 1980 ‘85‘75 1990‘55 1960 FACOM 100 FACOM 128A FACOM 222 FACOM 230series FACOM 230-60 Amdahl 470V/6 FACOM M-190 FACOM M-200 FACOM M-380 FACOM M-780 FUJITSU M-1800 1954 1958 1961 1964 1968 1975 1978 1976 1981 1985 1990 FACOM 128B 1956 リレー トランジスタ IC (集積回路) FACOM 230-75 1970 1973 FACOM 230-8series LSI ALGOL compiler FORTRAN compiler Data communications MCP II (for 230-20/30) 1960 1963 1965 MONITOR V (large-scale) 1968 TSS PL/I compiler BOS (mid-scale) 1971 1969 COBOL compiler DB/DC BOS/VS OSII/VS 1974 MONITOR VI/VII 1975 OSIV/F4 (M-series OS) 1977 1982 OSIV/F4 MSP 1981 OSIV/F2 ESP 1983 OSIV/X8 FSP OSIV/F2 OSIV/X8 RDB AIM (Online DB) オペレーティング・システム ネットワーク, DB/DC コンパイラ 1966 MONITOR II (for 230-50) OSII 1989 OSIV/MSP (MSP-EX) 1990 OSIV/FSP 1966 プログラム開発部門の創設 1968 プログラム試験課の設置 1974 ソフトウェア事業部門の設立
  • 6.
    (c) K. Tatsumi20136 前史  富士通におけるテストケース設計の手順 (1970年代初めより) Step1. テスト分類 • テスト対象の機能を小さく分割する Step2. テスト要因分析 • 外部仕様書から、入力条件と動作環境条 件(因子)、それらが取りうる値(状態)を抽出 する Step3. テストケース作成 • 因子と状態を組み合わせてテストケースを 作成する Step4. テスト結果の定義 • 各テストケースの期待結果を定義する fooコマンド [機能] [入力形式] ・・・・・ 1. ・・・ 2. ・・・ <外部仕様書> <テスト要因分析表> A B C D 1 a1 b1 c1 d1 2 a2 b2 c2 d2 3 a3 c3 d3 4 c4 状態 因子 <テストケース表> 因子 A B C D テストケース1 a1 b1 c1 d1 テストケース2 a2 b2 c3 d2 テストケースn a3 b1 c4 d3
  • 7.
    (c) K. Tatsumi20137 組み合わせテスト技法の誕生  実験計画法の適用 原因結果グラフと同様の制約条件 - 排他 - 包含 - 一つのみ 辰巳のCOMPSAC‘87 発表スライドより (1983-1984)
  • 8.
    (c) K. Tatsumi20138 組み合わせテスト技法の誕生  テストケース設計支援システム (1986-1987)  テスト設計プロセスの支援 • テスト分類からテストケース作 成のフェーズまでを支援 • テスト仕様書の管理や改訂の 支援  支援機能の改良 • テストケース生成アルゴリズム • 制約条件の処理 – 状態-状態間, 因子-状態間, 因子-因子間 » 排他的組み合わせ » 組み合わせなし » 必要な組み合わせ » 状態のグルーピング 辰巳のCOMPSAC‘87 発表スライドより
  • 9.
    (c) K. Tatsumi20139 米国への組み合わせテスト技法の移転  英語論文の発表  T. Yoshida, “Attaining Higher Quality in Software Development - Evaluation in Practice”, FSTJ, 1985  K. Tatsumi, "Conceptual Support for Test Case Design", COMPSAC'87  K. Tatsumi, "Test Case Design Support System", ICQC'87 T. Yoshida, "Attaining Higher Quality in Software Development - Evaluation in Practice -", Fujitsu Scientific and Technical Journal, Vol.21, pp.305-316, 1985 吉田 征, 技術の伝承と移転-芸術と技術と人間との接点からの発想, pp.113-114, 日科技連出版, 1994  米国AT&T社への紹介(1989年) (吉田氏の著書より)  吉田は富士通のジャーナル(FSTJ)に掲載された論文を読んだAT&T社の人か ら、実験計画法(DoE)の適用方法を教えて欲しいと依頼を受けていた  日科技連の第1次ソフトウェア製品品質管理調査団の一員として海外視察に 参加した際、視察途中の1989年4月30日にニュージャージー州Somersetの Marriottホテルで吉田らはAT&T社の技術者達とのミーティングをもち説明した  この時、説明資料の一つとして辰巳がICQC'87で発表した論文のコピーが提 供された
  • 10.
    組み合わせテスト技法の系譜 10 (c) K.Tatsumi 2013 1920-1930 実験計画法(DoE) (Fisher) 1940 直交表 (Rao) 品質工学 (田口) u <企業> 品質工学フォーラム(学会)設立 品質工学誌に「ソフトウェア開発のためのロバスト・テスティング法」を寄稿 (Phadke) ソフトウェアテストへの適用(田口) ソフトウェアテストへの適用事例 (エプソン、ミノルタ、松下電工) 米国で直交表を HAYST法開発開始 HAYST法発表 入門書籍出版 ツール外販開始 ソフトウェアテストに適用 ソフトウェアテストに 実験計画法を適用 Test Case Design Support System (辰巳) 富士通英文ジャーナル(FSTJ)誌に論文掲載 PictMaster (岩通ソフト) 適用事例 (NEC, IBM Japan) <アカデミア> 組み合わせ論理 遺伝アルゴリズム(GA)適用 CIT-BACH u u "Taguchi methods"と命名される 品質工学の紹介 (Xerox, Bell研) u 富士通からAT&Tに技術紹介 OATS (Brownlie, Phadke et.al.) CATS (Sherwood) AETG (Cohen et.al.) Adaコンパイラのテストに DoEのラテン方格適用 (Mandl) PICT(Microsoft) ACTS(NIST) 1995 2000 2005 20101985 19901950 1960 1970 1980 品質工学 コミュニティ ソフトウェア 品質/テスト コミュニティ 日本 米国 [富士ゼロックス] [富士通] [AT&T] [大阪大学] 計算論的アプローチ 代数的アプローチ (OA, CA) [Bellcore]
  • 11.
    日本の組み合わせテストの状況  ソフトウェアテスト技術者のコミュニティ  ASTER:Association of Software Test EngineeRing • 特定非営利活動法人 ソフトウェアテスト技術振興協会 • ソフトウェアテスト専門技術者のボランティアによる組織運営 • 活動 – シンポジウム開催 - JaSST: Japan Symposium on Software Testing – 資格認定試験 - JSTQB: Japan Software Testing Qualifications Board, ISTQB会員 – 海外連携 - ASTA (アジア連携) / ISO-IEC (国際標準規格) – 教育研修 – セミナー開催 / 教材公開 / 大学カリキュラム / Test.SSF (スキル標準) – 研究 – テストアーキテクチャ、バグ分析などの研究活動 (1/2) 11 (c) K. Tatsumi 2013
  • 12.
    日本の組み合わせテストの状況  組み合わせテストに関する論文や発表件数の推移 1984-’90: 9件,’91-’95: 0件, ’96-’00: 6件, ’01-’05: 9件, ’06- : 31件  組み合わせテストの実務への適用状況 (日本の主要IT企業5社のテスト技術者への聴き取り調査より)  5社とも組み合わせテスト技法は導入済み  使用ツール • PICT, PictMaster, ACTS, HAYST, 自社製ツール  課題 • 組み合わせ以前のテスト設計フェーズが重要 • 組み合わせテスト技法と他の同様のテスト技法の選択基準  著名なツール  HAYST法  PictMaster (2/2) 12 (c) K. Tatsumi 2013
  • 13.
    HAYST 法  概要 直交表に基づくテスト技法  富士ゼロックス社が2000年に開発  ソフトウェアテストHAYST法入門を2007年に出版  テストケース設計手法  “FV表”を用いてテスト分析結果を整理  “ラルフチャート” でテスト対象機能をモデル化  “FL表” に因子・水準を抽出して整理 13 (c) K. Tatsumi 2013 (1/4) <FV表> <FL表><ラルフチャート> No. 目的機能 検証内容 テスト技法 No. 因子名 水準1 水準2 … 水準N
  • 14.
    HAYST 法  HAYST法ツール“MatrixTester”  テンプレート(強度2, L4 - L256)から多水準直交表に変形  禁則回避(制約条件)の処理  部分組合せ保証(3, 4, 5 因子間)  組合せ網羅率の算出  適用状況  MatrixTester • 自社(560 ライセンス)及び社外(23 社, 160 ライセンス)で使用 – 製造業(自動車, 医療), 金融業, 流通業, 家電, 通信・放送機器, 化学 など  入門書籍販売数 • 4000 部 14 (c) K. Tatsumi 2013 (2/4) K. Akiyama et al., "Development and Evaluation of HAYST Method Tool," in Proc. SoMeT, 2010, pp.398-414. http://www.hayst.com/Documents/HAYST-MethodTool.pdf (slides) http://www.hayst.com/Documents/20101001-SoMeT.pdf
  • 15.
    HAYST 法  MatrixTester: 入力 (因子, 水準, 禁則情報) 15 (c) K. Tatsumi 2013 (3/4) Input type Explanation Factor (Parameter) Name of parameter to be combined Level (Value) List of values existing in parameter Importance of factor Factors are grouped and it is possible to specify strength for group Importance of level Importance of level (Weighting) Constraint information Constraint condition in combination between levels Assignment method Normal assignment, Partial combination assurance, rating assurance, Level consolidation, Room technique, Strength 3, PICT calling Detection bug information Type of bug Specific factor Value generation type, Fixed value, Sequence number Form style Form style at the time of Excel output Auto execution support information Windows Dialog GUI information for auto execution [禁則情報] (Source: Koichi Akiyama, Fuji Xerox)
  • 16.
    HAYST 法  MatrixTester: 出力 (テストマトリクス) 16 (c) K. Tatsumi 2013 (4/4) Type of output Explanation Test matrix Result of assignment to orthogonal array Test script Orthogonal array is output to Excel in script format in each line Appearance status Appearance frequency and combination that does not appear Rating Rating of combination between 2 factors and 3 factors Round Robin table Round Robin table indicating appearance status of level combination between 2 factors and 3 factors Constraint graph Graph indicating hierarchical status of constraint and that data table Test analysis result Result of analysis of existence position of bug based on the test result (Source: Koichi Akiyama, Fuji Xerox)
  • 17.
    PictMaster  概要  ExcelベースのGUIをもつペアワイズテストツール  テストケース生成エンジンとして PICT を利用  2008年に岩通ソフトの鶴巻氏が開発  適用状況  2008年公開以降, 累積ダウンロード数は20,000回以上  岩通社内のビジネスホンシステムのシステムテスト  車載OSのテスト  大規模パッケージソフトウエア  ダウンロード http://en.sourceforge.jp/projects/pictmaster/releases/ 17 (c) K. Tatsumi 2013 (1/2) Mr. Tsurumaki can be contacted at LinkedIn "Combinatorial and Pairwise Testing" group. http://www.linkedin.com/groups/Combinatorial-Pairwise-Testing-4243185
  • 18.
    PictMaster  主な機能  GUIサポート  制約表 (PICTの制約条件に変換)  テスト期待結果表 18 (c) K. Tatsumi 2013 (2/2) (Source: Toshiro Tsurumaki, IWATSU SYSTEM & SOFTWARE)
  • 19.
    まとめ  組み合わせテスト技法の開発の歴史からの学び テスト技術の進化のためには以下が必要  オープン性と協業(コラボレーション) ツールと方法論  日本における課題  テストプロセスの上流の強化 • テストアーキテクチャ設計, 入力モデリング  多数のテスト技法から適切な技法を選択するための指針 • どのようなタイプのソフトウェアに組み合わせテスト技法を適用する とよいのか? 19 (c) K. Tatsumi 2013