グラフデータベースをバックエンドとするソフトウェアに対するテスト手法の確立
Project/Area Number |
20K11747
|
Research Category |
Grant-in-Aid for Scientific Research (C)
|
Allocation Type | Multi-year Fund |
Section | 一般 |
Review Section |
Basic Section 60050:Software-related
|
Research Institution | Osaka University |
Principal Investigator |
土屋 達弘 大阪大学, 大学院情報科学研究科, 教授 (30283740)
|
Project Period (FY) |
2020-04-01 – 2024-03-31
|
Project Status |
Granted (Fiscal Year 2022)
|
Budget Amount *help |
¥4,290,000 (Direct Cost: ¥3,300,000、Indirect Cost: ¥990,000)
Fiscal Year 2022: ¥1,300,000 (Direct Cost: ¥1,000,000、Indirect Cost: ¥300,000)
Fiscal Year 2021: ¥1,300,000 (Direct Cost: ¥1,000,000、Indirect Cost: ¥300,000)
Fiscal Year 2020: ¥1,690,000 (Direct Cost: ¥1,300,000、Indirect Cost: ¥390,000)
|
Keywords | グラフデータベース / ミューテーションテスト / グラフクエリ / テストカバレッジ / テスト / ソフトウェアテスト / カバレッジ |
Outline of Research at the Start |
本研究では,グラフデータベースという,ネットワークをデータとするデータベースを用いたシステムを対象に,そのソフトウェアをテストする方法の確立を目指す.これにより,信頼性の高いソフトウェアの実現が可能となる.研究では,ソフトウェアが実行するグラフデータベースに対する命令であるグラフクエリに注目する.具体的には,グラフクエリのどの部分がどの程度されたかを計測することで,どの程度テストが実行されているかを計測するための基準を考案する.さらに,その基準を用いて,効率の良い自動テスト手法を開発する.
|
Outline of Annual Research Achievements |
本研究では,NoSQLデータベースの1つであるグラフデータベースを用いるソフトウェアを対象としたテスト手法の確立を目指している.3年度目となる2022年 度では,このようなソフトウェアを対象とするミューテーションテスト(ミューテーション分析)に関する研究を主に進めた. ミューテーションテストは,プログラムに人為的にバグを埋め込むことで,誤ったプログラムを多数生成する.テストをこれらのプログラムに対し実行し,どの程度,不具合が検出できたかを調べる.このことで,テストスイートのバグ検出能力を計測することができる. 前年度の2021年度でグラフデータベースにおける問合せ言語(クエリ言語)に対するミューテーションテスト方法を開発したが,2022年度では,この方法の実装を中心に行った.この実装では,Neo4J等の代表的なグラフデータベースでサポートされているクエリ言語Cypherに対し,多数のミューテーション操作(バグを埋め込む操作)をNode.jsとJavaScriptを用いて実現した.Cypherで記述されたクエリをこの実装に入力すると,自動的にバグを含む多数のクエリが出力される. このミューテーションテストを実行するツールの実装に加えて,コードのホスティングサービスサイト上でこのツールを公開するための準備を進めた.さらに,2021年度に国際会議にて論文発表したグラフデータベースを用いたソフトウェアシステム開発工程におけるテストカバレッジの把握についても,用いたデータを公開するため,その準備を進めた.
|
Current Status of Research Progress |
Current Status of Research Progress
3: Progress in research has been slightly delayed.
Reason
当初の計画にはなかった,グラフデータベースを用いたソフトウェアテストの実現は,計画以上に研究が進捗した部分である.また,グラフクエリに対するミューテーションテストの設計を行うだけでなく,自動的に実現するツールの実装も完了した. 一方,開発したツールの有効性を評価をする点は,3年間の当初の期間では完了できなかったため,1年の延長を申請し,許可された.加えて,ツールやデータの公開についても,準備の大半を2022年度中に終えており,1年の延長によって,2023年度中に実現できる見込みである.
|
Strategy for Future Research Activity |
実装したCypherクエリに対するミューテーションテストツールの有効性を評価するため,実験を計画し,実施する. 上記のツール,および,研究前半部分で用いたデータ(実際のソフトウェアテストにおけるアーティファクトのモデル)の公開を行う. 研究成果を記した論文執筆,投稿,国内・国際会議での発表を順次実施する.
|
Report
(3 results)
Research Products
(4 results)