講演抄録/キーワード |
講演名 |
2020-01-22 15:25
等価ミュータント生成によるCコンパイラのテストバリエーションの増強 ○前田紘輝・石浦菜岐佐(関西学院大) VLD2019-61 CPSY2019-59 RECONF2019-51 |
抄録 |
(和) |
本稿では, C コンパイラの自動テストにおいて, 等価ミュータント生成によりテストのバリエーションを増強する手法を提案する. 言語の文法に基づいてテストプログラムを生成する生成ベースの手法に比べ, 既存のプログラムの一部を変異させることによって新たなテストプログラムを生成する変異ベースの手法は, 変異元となるプログラムを適切に選択することによって, その不具合検出能力を向上させたり, 特定機能のテストを重点的に行える等の利点がある. しかし, 既存の変異ベース手法では, テストプログラムが未定義動作を引き起こすのを回避するために, 適用される変異操作が限定され, 生成できるテストのバリエーションが限られるという課題がある. 本稿では, 変異元プログラム中の全ての変数の型と値の情報を把握することによって, 既存の手法では行われていないテストプログラムの変異を提案する. 変数の修飾子・データ型の変異, 変数・配列・構造体・共用体の相互置き換え, および制御文による文のブロック化を, 変異元プログラム中の変数の持つ値が変化しないように行うことによって等価ミュータントを生成する. 本手法に基づくテストシステムを実装し, 過去のコンパイラのエラープログラムを変異元プログラムとして実験を行ったところ. GCC-5.5.0 LLVM/Clang-3.5.2 において従来の変異手法では検出できない不具合を検出した. |
(英) |
This article proposes a method of increasing variation of test programs in automatic testing of C compilers by means of equivalent mutant generation. A mutation-based method, where test programs are generated by mutating existing test programs, has different merits from a grammar-based generation method, especially when seed test programs are properly chosen. One of the challenges for the mutation-based method is that applicable mutations have been limited because the mutations must not induce undefined behavior in test programs. This article introduces new types of mutations by bookkeeping the values of all the variables in seed test programs. Our new mutations generate equivalent test programs from a seed program in a sense that all the variable updates are done with the same values both in the seed and mutated programs. The mutations are based on 1) replacement of types and modifiers of variables, 2) interchange among scalar variables, array elements, and struct members, and 3) nesting statements with conditional and loop constructs. A test system based on the proposed method has detected bugs in GCC-5.5.0 and LLVM/Clang-3.5.2 by test programs which can not be generated by existing methods. |
キーワード |
(和) |
コンパイラ / 自動テスト / 等価ミュータント / / / / / |
(英) |
compiler / automatic testing / equivalent mutant / / / / / |
文献情報 |
信学技報, vol. 119, no. 371, VLD2019-61, pp. 43-48, 2020年1月. |
資料番号 |
VLD2019-61 |
発行日 |
2020-01-15 (VLD, CPSY, RECONF) |
ISSN |
Print edition: ISSN 0913-5685 Online edition: ISSN 2432-6380 |
著作権に ついて |
技術研究報告に掲載された論文の著作権は電子情報通信学会に帰属します.(許諾番号:10GA0019/12GB0052/13GB0056/17GB0034/18GB0034) |
PDFダウンロード |
VLD2019-61 CPSY2019-59 RECONF2019-51 |
研究会情報 |
研究会 |
IPSJ-SLDM RECONF VLD CPSY IPSJ-ARC |
開催期間 |
2020-01-22 - 2020-01-24 |
開催地(和) |
慶応義塾大学 日吉キャンパス 来往舎 |
開催地(英) |
Raiosha, Hiyoshi Campus, Keio University |
テーマ(和) |
FPGA応用および一般 |
テーマ(英) |
FPGA Applications, etc. |
講演論文情報の詳細 |
申込み研究会 |
VLD |
会議コード |
2020-01-SLDM-RECONF-VLD-CPSY-ARC |
本文の言語 |
日本語 |
タイトル(和) |
等価ミュータント生成によるCコンパイラのテストバリエーションの増強 |
サブタイトル(和) |
|
タイトル(英) |
Increasing Test Variation for C Compilers by Equivalent Mutant Generation |
サブタイトル(英) |
|
キーワード(1)(和/英) |
コンパイラ / compiler |
キーワード(2)(和/英) |
自動テスト / automatic testing |
キーワード(3)(和/英) |
等価ミュータント / equivalent mutant |
キーワード(4)(和/英) |
/ |
キーワード(5)(和/英) |
/ |
キーワード(6)(和/英) |
/ |
キーワード(7)(和/英) |
/ |
キーワード(8)(和/英) |
/ |
第1著者 氏名(和/英/ヨミ) |
前田 紘輝 / Hiroki Maeda / マエダ ヒロキ |
第1著者 所属(和/英) |
関西学院大学 (略称: 関西学院大)
Kwansei Gakuin University (略称: Kwansei Gakuin Univ.) |
第2著者 氏名(和/英/ヨミ) |
石浦 菜岐佐 / Nagisa ishiura / イシウラ ナギサ |
第2著者 所属(和/英) |
関西学院大学 (略称: 関西学院大)
Kwansei Gakuin University (略称: Kwansei Gakuin Univ.) |
第3著者 氏名(和/英/ヨミ) |
/ / |
第3著者 所属(和/英) |
(略称: )
(略称: ) |
第4著者 氏名(和/英/ヨミ) |
/ / |
第4著者 所属(和/英) |
(略称: )
(略称: ) |
第5著者 氏名(和/英/ヨミ) |
/ / |
第5著者 所属(和/英) |
(略称: )
(略称: ) |
第6著者 氏名(和/英/ヨミ) |
/ / |
第6著者 所属(和/英) |
(略称: )
(略称: ) |
第7著者 氏名(和/英/ヨミ) |
/ / |
第7著者 所属(和/英) |
(略称: )
(略称: ) |
第8著者 氏名(和/英/ヨミ) |
/ / |
第8著者 所属(和/英) |
(略称: )
(略称: ) |
第9著者 氏名(和/英/ヨミ) |
/ / |
第9著者 所属(和/英) |
(略称: )
(略称: ) |
第10著者 氏名(和/英/ヨミ) |
/ / |
第10著者 所属(和/英) |
(略称: )
(略称: ) |
第11著者 氏名(和/英/ヨミ) |
/ / |
第11著者 所属(和/英) |
(略称: )
(略称: ) |
第12著者 氏名(和/英/ヨミ) |
/ / |
第12著者 所属(和/英) |
(略称: )
(略称: ) |
第13著者 氏名(和/英/ヨミ) |
/ / |
第13著者 所属(和/英) |
(略称: )
(略称: ) |
第14著者 氏名(和/英/ヨミ) |
/ / |
第14著者 所属(和/英) |
(略称: )
(略称: ) |
第15著者 氏名(和/英/ヨミ) |
/ / |
第15著者 所属(和/英) |
(略称: )
(略称: ) |
第16著者 氏名(和/英/ヨミ) |
/ / |
第16著者 所属(和/英) |
(略称: )
(略称: ) |
第17著者 氏名(和/英/ヨミ) |
/ / |
第17著者 所属(和/英) |
(略称: )
(略称: ) |
第18著者 氏名(和/英/ヨミ) |
/ / |
第18著者 所属(和/英) |
(略称: )
(略称: ) |
第19著者 氏名(和/英/ヨミ) |
/ / |
第19著者 所属(和/英) |
(略称: )
(略称: ) |
第20著者 氏名(和/英/ヨミ) |
/ / |
第20著者 所属(和/英) |
(略称: )
(略称: ) |
講演者 |
第1著者 |
発表日時 |
2020-01-22 15:25:00 |
発表時間 |
25分 |
申込先研究会 |
VLD |
資料番号 |
VLD2019-61, CPSY2019-59, RECONF2019-51 |
巻番号(vol) |
vol.119 |
号番号(no) |
no.371(VLD), no.372(CPSY), no.373(RECONF) |
ページ範囲 |
pp.43-48 |
ページ数 |
6 |
発行日 |
2020-01-15 (VLD, CPSY, RECONF) |
|